diff options
author | Jaime van Kessel <nallath@gmail.com> | 2022-06-16 11:47:06 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-06-16 11:47:06 +0300 |
commit | ac32f3b62553de8a5acf75e1d45cbe54de846be3 (patch) | |
tree | 26749a3a2c34ad2594620ccda2817687332025b7 /cura | |
parent | 8c92ebfccd4dabb1159d2269e2fe8c2a3fe1de7a (diff) | |
parent | 8c2ac9f21ebadd05d04a778027c44da343c6a342 (diff) |
Merge pull request #12530 from Ultimaker/CURA-8610_save_required_packages_metadata
[CURA-8610] save required packages metadata
Diffstat (limited to 'cura')
-rw-r--r-- | cura/CuraPackageManager.py | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/cura/CuraPackageManager.py b/cura/CuraPackageManager.py index 87a2935d96..da71021d1f 100644 --- a/cura/CuraPackageManager.py +++ b/cura/CuraPackageManager.py @@ -62,10 +62,11 @@ class CuraPackageManager(PackageManager): for path in Resources.getSecureSearchPaths(): # Secure search paths are install directory paths, if a material is in here it must be bundled. - paths = [Path(p) for p in glob.glob(path + '/**/*.xml.fdm_material')] + paths = [Path(p) for p in glob.glob(path + '/**/*.xml.fdm_material', recursive=True)] for material in paths: if material.name == file_name: - with open(str(material), encoding="utf-8") as f: + Logger.info(f"Found bundled material: {material.name}. Located in path: {str(material)}") + with open(material, encoding="utf-8") as f: # Make sure the file we found has the same guid as our material # Parsing this xml would be better but the namespace is needed to search it. parsed_guid = PluginRegistry.getInstance().getPluginObject( @@ -87,11 +88,12 @@ class CuraPackageManager(PackageManager): # File with the name we are looking for is not in this directory continue - with open(root + "/" + file_name, encoding="utf-8") as f: + with open(os.path.join(root, file_name), encoding="utf-8") as f: # Make sure the file we found has the same guid as our material # Parsing this xml would be better but the namespace is needed to search it. parsed_guid = PluginRegistry.getInstance().getPluginObject("XmlMaterialProfile").getMetadataFromSerialized( f.read(), "GUID") + if guid == parsed_guid: return package_id |