]> granicus.if.org Git - graphviz/commitdiff
ortho monotonate_trapezoids: allocate structures based on trapezoid count
authorMatthew Fernandez <matthew.fernandez@gmail.com>
Thu, 24 Nov 2022 17:31:02 +0000 (09:31 -0800)
committerMatthew Fernandez <matthew.fernandez@gmail.com>
Wed, 30 Nov 2022 04:15:50 +0000 (20:15 -0800)
`tr->length` and `TRSIZE(nsegs)` are the same value here, so this has no
immediate effect. This is a step towards moving to on-demand allocation.

Gitlab: #56

lib/ortho/partition.c

index 0c61fc9ba7900e18f436a2d52fda9204c3282d2f..adbc6e4ae769ac9255a9022af109ac4766e6c7c9 100644 (file)
@@ -596,16 +596,15 @@ monotonate_trapezoids(int nsegs, segment_t *seg, traps_t *tr,
 {
     int i, size;
     int tr_start;
-    int tr_size = TRSIZE(nsegs);
-    int* visited = gv_calloc(tr_size, sizeof(int));
+    int* visited = gv_calloc(tr->length, sizeof(int));
 
-    mchain = gv_calloc(tr_size, sizeof(monchain_t));
+    mchain = gv_calloc(tr->length, sizeof(monchain_t));
     vert = gv_calloc(nsegs + 1, sizeof(vertexchain_t));
     mon = gv_calloc(nsegs, sizeof(int));
 
   /* First locate a trapezoid which lies inside the polygon */
   /* and which is triangular */
-    for (i = 0; i < TRSIZE(nsegs); i++)
+    for (i = 0; i < tr->length; i++)
        if (inside_polygon(&tr->data[i], seg)) break;
     tr_start = i;