None-check for material diameter.

Fixes a crash for materials which don't have that metadata-entry,
such as an empty material (UM2)

CURA-6873
This commit is contained in:
Nino van Hooff 2019-10-10 09:27:23 +02:00
parent 44cb810c85
commit d60b26db15

View file

@ -84,7 +84,7 @@ class VariantNode(ContainerNode):
return material_node
# First fallback: Choose any material with matching diameter.
for material_node in self.materials.values():
if approximate_diameter == int(material_node.getMetaDataEntry("approximate_diameter")):
if material_node.getMetaDataEntry("approximate_diameter") and approximate_diameter == int(material_node.getMetaDataEntry("approximate_diameter")):
return material_node
fallback = next(iter(self.materials.values())) # Should only happen with empty material node.
Logger.log("w", "Could not find preferred material {preferred_material} with diameter {diameter} for variant {variant_id}, falling back to {fallback}.".format(