]> granicus.if.org Git - postgis/commitdiff
Fix _ST_AddFaceSplit code against PostgreSQL 9.1
authorSandro Santilli <strk@keybit.net>
Sat, 28 Jan 2012 23:11:08 +0000 (23:11 +0000)
committerSandro Santilli <strk@keybit.net>
Sat, 28 Jan 2012 23:11:08 +0000 (23:11 +0000)
git-svn-id: http://svn.osgeo.org/postgis/trunk@8961 b70326c6-7e19-0410-871a-916f4a2858ee

topology/sql/sqlmm.sql.in.c

index a6ceec1eee4662d5e3ff233d2452400480f74e1f..6ab4ee3e7f2cecea5e58a4accba753d6f69a9e4c 100644 (file)
@@ -2727,10 +2727,10 @@ BEGIN
   RAISE DEBUG 'Edge % splitted face %', anedge, oface;
 #endif
 
-  sql := 'WITH ids as ( select edge from unnest('
+  sql := 'WITH ids as ( select row_number() over () as seq, edge from unnest('
     || quote_literal(fan.newring_edges::text)
     || '::int[] ) u(edge) ), edges AS ( select CASE WHEN i.edge < 0 THEN ST_Reverse(e.geom) ELSE e.geom END as g FROM ids i left join '
-    || quote_ident(atopology) || '.edge_data e ON(e.edge_id = abs(i.edge)) ) SELECT ST_MakePolygon(ST_MakeLine(g.g)) FROM edges g;';
+    || quote_ident(atopology) || '.edge_data e ON(e.edge_id = abs(i.edge)) ORDER BY seq) SELECT ST_MakePolygon(ST_MakeLine(g.g)) FROM edges g;';
 #ifdef POSTGIS_TOPOLOGY_DEBUG
   RAISE DEBUG '%', sql;
 #endif