Pārlūkot izejas kodu

diglib: avoid segfault for POstGIS topology

git-svn-id: https://svn.osgeo.org/grass/grass/trunk@55994 15284696-431f-4ddb-bdfa-cd5b030d7da7
Markus Metz 12 gadi atpakaļ
vecāks
revīzija
570ea1b558
1 mainītis faili ar 6 papildinājumiem un 6 dzēšanām
  1. 6 6
      lib/vector/diglib/plus_line.c

+ 6 - 6
lib/vector/diglib/plus_line.c

@@ -268,6 +268,9 @@ int dig_del_line(struct Plus_head *plus, int line, double x, double y, double z)
     }
     Node->n_lines--;
 
+    if (plus->uplist.do_uplist) {
+        dig_node_add_updated(plus, Node->n_lines > 0 ? N1 : -N1);
+    }
     if (Node->n_lines == 0) {
 	G_debug(3, "    node %d has 0 lines -> delete", N1);
 	dig_spidx_del_node(plus, N1);
@@ -275,9 +278,6 @@ int dig_del_line(struct Plus_head *plus, int line, double x, double y, double z)
 	dig_free_node(Node);
 	plus->Node[N1] = NULL;
     }
-    if (plus->uplist.do_uplist) {
-        dig_node_add_updated(plus, Node->n_lines > 0 ? N1 : -N1);
-    }
     
     if (Line->type == GV_LINE) {
 	struct P_topo_l *topo = (struct P_topo_l *)Line->topo;
@@ -304,6 +304,9 @@ int dig_del_line(struct Plus_head *plus, int line, double x, double y, double z)
     }
     Node->n_lines--;
 
+    if (plus->uplist.do_uplist) {
+        dig_node_add_updated(plus, Node->n_lines > 0 ? N2 : -N2);
+    }
     if (Node->n_lines == 0) {
 	G_debug(3, "    node %d has 0 lines -> delete", N2);
 	dig_spidx_del_node(plus, N2);
@@ -311,9 +314,6 @@ int dig_del_line(struct Plus_head *plus, int line, double x, double y, double z)
 	dig_free_node(Node);
 	plus->Node[N2] = NULL;
     }
-    if (plus->uplist.do_uplist) {
-        dig_node_add_updated(plus, Node->n_lines > 0 ? N2 : -N2);
-    }
 
     /* Delete line */
     dig_free_line(Line);