diff --git a/src/Mod/Part/App/Geometry.cpp b/src/Mod/Part/App/Geometry.cpp index 8e949a47eb..2fe18c9972 100644 --- a/src/Mod/Part/App/Geometry.cpp +++ b/src/Mod/Part/App/Geometry.cpp @@ -3752,7 +3752,13 @@ void GeomLineSegment::Restore (Base::XMLReader &reader) // the points are too close. The best try to restore is incrementing the distance. // for other objects, the best effort may be just to leave default values. reader.setPartialRestore(true); - end = start + Base::Vector3d(start.x*DBL_EPSILON,0,0); + + if(start.x == 0) { + end = start + Base::Vector3d(DBL_EPSILON,0,0); + } + else { + end = start + Base::Vector3d(start.x*DBL_EPSILON,0,0); + } setPoints(start, end); }