[geos-commits] r3977 - trunk/src/operation/polygonize

svn_geos at osgeo.org svn_geos at osgeo.org
Fri Mar 28 14:13:29 PDT 2014


Author: strk
Date: 2014-03-28 14:13:29 -0700 (Fri, 28 Mar 2014)
New Revision: 3977

Modified:
   trunk/src/operation/polygonize/Polygonizer.cpp
Log:
Make polygonize operation interruptable

Modified: trunk/src/operation/polygonize/Polygonizer.cpp
===================================================================
--- trunk/src/operation/polygonize/Polygonizer.cpp	2014-03-17 14:17:03 UTC (rev 3976)
+++ trunk/src/operation/polygonize/Polygonizer.cpp	2014-03-28 21:13:29 UTC (rev 3977)
@@ -24,6 +24,7 @@
 #include <geos/geom/LineString.h>
 #include <geos/geom/Geometry.h>
 #include <geos/geom/Polygon.h>
+#include <geos/util/Interrupt.h>
 // std
 #include <vector>
 
@@ -266,6 +267,7 @@
 			// returned LineString ownership is transferred.
 			invalidRingList.push_back(er->getLineString());
 		}
+		GEOS_CHECK_FOR_INTERRUPTS();
 	}
 }
 
@@ -282,6 +284,7 @@
 			holeList.push_back(er);
 		else
 			shellList.push_back(er);
+		GEOS_CHECK_FOR_INTERRUPTS();
 	}
 }
 
@@ -293,6 +296,7 @@
 	{
 		EdgeRing *holeER=holeList[i];
 		assignHoleToShell(holeER, shellList);
+		GEOS_CHECK_FOR_INTERRUPTS();
 	}
 }
 



More information about the geos-commits mailing list