]> granicus.if.org Git - graphviz/commitdiff
remove unnecessary dynamic allocation
authorMatthew Fernandez <matthew.fernandez@gmail.com>
Sun, 18 Apr 2021 04:49:56 +0000 (21:49 -0700)
committerMatthew Fernandez <matthew.fernandez@gmail.com>
Sat, 24 Apr 2021 20:31:56 +0000 (13:31 -0700)
Using the heap for a statically-known array of two pointers is inefficient. This
can just be stack-allocated, improving the compiler’s visibility and ability to
optimize. Removes a -Wsign-conversion compiler warning.

lib/neatogen/adjust.c

index ff8c32db99bcf7191f04f23fd005240a937d290f..d94bf6e3cf97da177cb33b39f2bc8a3d9def89d0 100644 (file)
@@ -800,11 +800,11 @@ fdpAdjust (graph_t* g, adjust_data* am)
 static int
 vpscAdjust(graph_t* G)
 {
-    int dim = 2;
+    enum { dim = 2 };
     int nnodes = agnnodes(G);
     ipsep_options opt;
     pointf* nsize = N_GNEW(nnodes, pointf);
-    float** coords = N_GNEW(dim, float*);
+    float* coords[dim];
     float* f_storage = N_GNEW(dim * nnodes, float);
     int i, j;
     Agnode_t* v;
@@ -851,7 +851,6 @@ vpscAdjust(graph_t* G)
 
     free (opt.clusters);
     free (f_storage);
-    free (coords);
     free (nsize);
     return 0;
 }