From bd08eadac9ec980490c53966ca1f0a5ab633304a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gina=20H=C3=A4u=C3=9Fge?= Date: Fri, 5 Dec 2014 12:01:02 +0100 Subject: [PATCH] Fixed a bug causing the _default profile to be saved to a file instead of config.yaml --- src/octoprint/printer/profile.py | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/octoprint/printer/profile.py b/src/octoprint/printer/profile.py index 4a582530..319a08dc 100644 --- a/src/octoprint/printer/profile.py +++ b/src/octoprint/printer/profile.py @@ -90,17 +90,18 @@ class PrinterProfileManager(object): raise ValueError("profile must contain either id or name") identifier = self._sanitize(identifier) + profile["id"] = identifier + profile = dict_clean(profile, self.__class__.default) if identifier == "_default": default_profile = dict_merge(self._load_default(), profile) settings().set(["printerProfiles", "defaultProfile"], default_profile, defaults=dict(printerProfiles=dict(defaultProfile=self.__class__.default))) + settings().save() + else: + self._save_to_path(self._get_profile_path(identifier), profile, allow_overwrite=allow_overwrite) - profile["id"] = identifier - profile = dict_clean(profile, self.__class__.default) - self._save_to_path(self._get_profile_path(identifier), profile, allow_overwrite=allow_overwrite) - - if make_default: - settings().set(["printerProfiles", "default"], identifier) + if make_default: + settings().set(["printerProfiles", "default"], identifier) return self.get(identifier)