# HG changeset patch # User Teemu Piippo # Date 1521195616 -7200 # Node ID 8db26042f3d14dc7f248b3aca8f49c9d434c0ad7 # Parent ec5a38d19cf52fad617f0e8aa55796d00be6d609 Fixed crashing diff -r ec5a38d19cf5 -r 8db26042f3d1 src/linetypes/modelobject.cpp --- a/src/linetypes/modelobject.cpp Fri Mar 16 11:55:58 2018 +0200 +++ b/src/linetypes/modelobject.cpp Fri Mar 16 12:20:16 2018 +0200 @@ -90,7 +90,11 @@ int LDSubfileReference::triangleCount(DocumentManager* context) const { - return fileInfo(context)->triangleCount(); + LDDocument* file = fileInfo(context); + if (file) + return file->triangleCount(); + else + return 0; } int LDObject::numVertices() const @@ -212,15 +216,24 @@ // QList LDSubfileReference::inlinePolygons(DocumentManager* context) { - QList data = fileInfo(context)->inlinePolygons(); + LDDocument* file = fileInfo(context); - for (LDPolygon& entry : data) + if (file) { - for (int i = 0; i < entry.numVertices(); ++i) - entry.vertices[i].transform (transformationMatrix(), position()); + QList data = fileInfo(context)->inlinePolygons(); + + for (LDPolygon& entry : data) + { + for (int i = 0; i < entry.numVertices(); ++i) + entry.vertices[i].transform (transformationMatrix(), position()); + } + + return data; } - - return data; + else + { + return {}; + } } // =============================================================================