]> granicus.if.org Git - postgis/commitdiff
Do not call printf from interrupt handler, fixing deadlocks
authorSandro Santilli <strk@kbt.io>
Tue, 27 Sep 2016 08:12:03 +0000 (08:12 +0000)
committerSandro Santilli <strk@kbt.io>
Tue, 27 Sep 2016 08:12:03 +0000 (08:12 +0000)
Closes #3644 for 2.3 branch

git-svn-id: http://svn.osgeo.org/postgis/branches/2.3@15157 b70326c6-7e19-0410-871a-916f4a2858ee

NEWS
postgis/postgis_module.c

diff --git a/NEWS b/NEWS
index b9291aa875c9bd98c09c3163ca5532c89bb18028..e665ce0cdc54c5fed9db54fe275de8cbfc7ad5c2 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -3,6 +3,7 @@ PostGIS 2.3.1
 
   * Bug Fixes
   - #3643 PostGIS not building on latest OSX XCode
+  - #3644 Deadlock on interrupt
 
 PostGIS 2.3.0
 2016/09/26
@@ -14,7 +15,7 @@ PostGIS 2.3.0
 
   - #3604, pgcommon/Makefile.in orders CFLAGS incorrectly leading to
            wrong liblwgeom.h (Greg Troxel)
-   
+
   - #3396, ST_EstimatedExtent, throw WARNING instead of ERROR
            (Regina Obe)
 
@@ -33,7 +34,7 @@ PostGIS 2.3.0
   - #1758, ST_Normalize (Sandro Santilli)
   - #2236, shp2pgsql -d now emits "DROP TABLE IF EXISTS"
   - #2259, ST_VoronoiPolygons and ST_VoronoiLines (Dan Baston)
-  - #2841 and #2996, ST_MinimumBoundingRadius and new ST_MinimumBoundingCircle 
+  - #2841 and #2996, ST_MinimumBoundingRadius and new ST_MinimumBoundingCircle
            implementation using Welzl's algorithm (Dan Baston)
   - #2991, Enable ST_Transform to use PROJ.4 text (Mike Toews)
   - #3059, Allow passing per-dimension parameters in ST_Expand (Dan Baston)
index 7f2e35125c65b7b50d15f580adcc9f324c538ad3..e107098c7f9a7699350324624adef7c399befb6b 100644 (file)
@@ -127,7 +127,12 @@ _PG_fini(void)
 static void
 handleInterrupt(int sig)
 {
-  printf("Interrupt requested\n"); fflush(stdout);
+  /* NOTE: printf here would be dangerous, see
+   * https://trac.osgeo.org/postgis/ticket/3644
+   *
+   * TODO: block interrupts during execution, to fix the problem
+   */
+  /* printf("Interrupt requested\n"); fflush(stdout); */
 
 #if POSTGIS_GEOS_VERSION >= 34
   GEOS_interruptRequest();