diff options
| -rw-r--r-- | src/primitives.cc | 6 | ||||
| -rw-r--r-- | tests/regression/csgtermtest/allmodules-expected.term | 2 | 
2 files changed, 6 insertions, 2 deletions
| diff --git a/src/primitives.cc b/src/primitives.cc index 89c1573..13a6794 100644 --- a/src/primitives.cc +++ b/src/primitives.cc @@ -513,8 +513,12 @@ sphere_next_r2:  		if (this->paths.toVector().size() == 0)  		{ +			if (dd.points.size() <= 2) { // Ignore malformed polygons +				delete p; +				return NULL; +			}  			dd.paths.push_back(DxfData::Path()); -			for (size_t i=0; i<this->points.toVector().size(); i++) { +			for (size_t i=0; i<dd.points.size(); i++) {  				assert(i < dd.points.size()); // FIXME: Not needed, but this used to be an 'if'  				dd.paths.back().indices.push_back(i);  			} diff --git a/tests/regression/csgtermtest/allmodules-expected.term b/tests/regression/csgtermtest/allmodules-expected.term index b802c81..8b2f75f 100644 --- a/tests/regression/csgtermtest/allmodules-expected.term +++ b/tests/regression/csgtermtest/allmodules-expected.term @@ -1 +1 @@ -(((((((sphere12 + cube25) + sphere26) + cylinder27) + polyhedron28) + square29) + circle30) + polygon31) +((((((sphere12 + cube25) + sphere26) + cylinder27) + polyhedron28) + square29) + circle30) | 
