[postgis-tickets] r16846 - Add test for crash in SFCGAL ST_3DDifference

Sandro Santilli strk at kbt.io
Thu Sep 27 06:34:38 PDT 2018


Author: strk
Date: 2018-09-27 06:34:38 -0700 (Thu, 27 Sep 2018)
New Revision: 16846

Modified:
   trunk/regress/sfcgal/tickets.sql
   trunk/regress/sfcgal/tickets_expected
Log:
Add test for crash in SFCGAL ST_3DDifference

Closes #3255

Modified: trunk/regress/sfcgal/tickets.sql
===================================================================
--- trunk/regress/sfcgal/tickets.sql	2018-09-27 13:26:52 UTC (rev 16845)
+++ trunk/regress/sfcgal/tickets.sql	2018-09-27 13:34:38 UTC (rev 16846)
@@ -808,5 +808,9 @@
 SELECT '#2145',
 round(ST_Length(St_Segmentize(ST_GeographyFromText('LINESTRING(-89.3000030518 28.2000007629,-89.1999969482 89.1999969482,-89.1999969482 89.1999969482)'), 10000))::numeric,0);
 
+SELECT '#3255';
+-- should raise an error
+SELECT ST_3DDifference('POINT(-11 40)'::geometry, 'POLYGON((1 2,1 2,1 2,1 2))'::geometry);
+
 -- Clean up
 DELETE FROM spatial_ref_sys;

Modified: trunk/regress/sfcgal/tickets_expected
===================================================================
--- trunk/regress/sfcgal/tickets_expected	2018-09-27 13:26:52 UTC (rev 16845)
+++ trunk/regress/sfcgal/tickets_expected	2018-09-27 13:34:38 UTC (rev 16846)
@@ -245,3 +245,8 @@
 #2110.2|t
 #2110.3|t
 #2145|6792004
+#3255
+NOTICE:  During difference_3d(A,B) :
+NOTICE:    with A: POINT(-11/1 40/1)
+NOTICE:     and B: POLYGON((1/1 2/1,1/1 2/1,1/1 2/1,1/1 2/1))
+ERROR:  When converting to 3D - Polygon is invalid : ring 0 degenerated to a point : POLYGON((1/1 2/1 0/1,1/1 2/1 0/1,1/1 2/1 0/1,1/1 2/1 0/1))



More information about the postgis-tickets mailing list