Fix warning.
[bertos.git] / wizard / bertos_utils.py
index 401713f61a4f010a21a68440357b7f2fd13f7f7f..2520b109cff531be35b6e70308f9a6dc338f65f1 100644 (file)
@@ -82,11 +82,21 @@ def loadBertosProject(project_file):
             tag_dict[tag] = False
     project_info.setInfo("ALL_CPU_TAGS", tag_dict)
     loadModuleData(project_info, True)
+    setEnabledModules(project_info, project_data["ENABLED_MODULES"])
+    return project_info
+
+def setEnabledModules(project_info, enabled_modules):
     modules = project_info.info("MODULES")
     for module, information in modules.items():
-        information["enabled"] = module in project_data["ENABLED_MODULES"]
+        information["enabled"] = module in enabled_modules
     project_info.setInfo("MODULES", modules)
-    return project_info
+
+def enabledModules(project_info):
+    enabled_modules = []
+    for name, module in project_info.info("MODULES").items():
+        if module["enabled"]:
+            enabled_modules.append(name)
+    return enabled_modules
 
 def mergeSources(srcdir, new_sources, old_sources):
     # The current mergeSources function provide only a raw copy of the sources in the
@@ -679,7 +689,8 @@ def loadConfigurationInfos(path):
 
 def updateConfigurationValues(def_conf, user_conf):
     for param in def_conf["paramlist"]:
-        def_conf[param[1]]["value"] = user_conf[param[1]]["value"]
+        if param[1] in user_conf and "value" in user_conf[param[1]]:
+            def_conf[param[1]]["value"] = user_conf[param[1]]["value"]
     return def_conf
 
 def findParameterType(parameter):