]> granicus.if.org Git - graphviz/commitdiff
graphml2gv: remove unnecessary dynamic allocation of user data
authorMatthew Fernandez <matthew.fernandez@gmail.com>
Fri, 23 Dec 2022 21:27:01 +0000 (13:27 -0800)
committerMatthew Fernandez <matthew.fernandez@gmail.com>
Sat, 24 Dec 2022 17:52:53 +0000 (09:52 -0800)
cmd/tools/graphml2gv.c

index 90f265561a2e1ad47081a44ba4e5854b410a41e5..822df280670ddb9a1f89c1bab8a84c52842a34ec 100644 (file)
@@ -99,20 +99,17 @@ static Agedge_t *E;         /* Set if Current_class == TAG_EDGE */
 
 static gv_stack_t Gstack;
 
-static userdata_t *genUserdata(char* dfltname)
-{
-    userdata_t *user = gv_alloc(sizeof(*user));
-    user->elements = (gv_stack_t){0};
-    user->closedElementType = TAG_NONE;
-    user->edgeinverted = FALSE;
-    user->gname = dfltname;
-    return user;
+static userdata_t genUserdata(char *dfltname) {
+  userdata_t user = {0};
+  user.elements = (gv_stack_t){0};
+  user.closedElementType = TAG_NONE;
+  user.edgeinverted = FALSE;
+  user.gname = dfltname;
+  return user;
 }
 
-static void freeUserdata(userdata_t * ud)
-{
-    freeString(&ud->elements);
-    free(ud);
+static void freeUserdata(userdata_t ud) {
+  freeString(&ud.elements);
 }
 
 static int isAnonGraph(const char *name) {
@@ -361,11 +358,11 @@ static Agraph_t *graphml_to_gv(char* gname, FILE * graphmlFile, int* rv)
 {
     char buf[BUFSIZ];
     int done;
-    userdata_t *udata = genUserdata(gname);
+    userdata_t udata = genUserdata(gname);
     XML_Parser parser = XML_ParserCreate(NULL);
 
     *rv = 0;
-    XML_SetUserData(parser, udata);
+    XML_SetUserData(parser, &udata);
     XML_SetElementHandler(parser, startElementHandler, endElementHandler);
 
     Current_class = TAG_GRAPH;