]> granicus.if.org Git - graphviz/commitdiff
remove some unnecessary intermediate buffers in lefty
authorMatthew Fernandez <matthew.fernandez@gmail.com>
Sat, 6 Mar 2021 21:40:21 +0000 (13:40 -0800)
committerMatthew Fernandez <matthew.fernandez@gmail.com>
Tue, 16 Mar 2021 03:48:26 +0000 (20:48 -0700)
cmd/lefty/str.c

index 1c0d7038458ba8029c59ed8841983bd14b2b0254..03a0f91f0218393861edc22726acc828c4c7b262 100644 (file)
@@ -443,26 +443,18 @@ static void appends (char *s) {
 }
 
 static void appendi (long i) {
-    char buf[40];
-    int n;
-
-    sprintf (buf, "%ld", i);
-    n = strlen (buf) + 1;
+    int n = snprintf(NULL, 0, "%ld", i) + 1;
     if (sbufi + n > sbufn)
         growsbuf (n);
-    strcpy (&sbufp[sbufi], buf);
+    sprintf(&sbufp[sbufi], "%ld", i);
     sbufi += (n - 1);
 }
 
 static void appendd (double d) {
-    char buf[40];
-    int n;
-
-    sprintf (buf, "%lf", d);
-    n = strlen (buf) + 1;
+    int n = snprintf(NULL, 0, "%lf", d) + 1;
     if (sbufi + n > sbufn)
         growsbuf (n);
-    strcpy (&sbufp[sbufi], buf);
+    sprintf(&sbufp[sbufi], "%lf", d);
     sbufi += (n - 1);
 }