gbranden pushed a commit to branch master
in repository groff.

commit 44bec1f9481cbf6a7e502c50a832c8d60be24b60
Author: G. Branden Robinson <[email protected]>
AuthorDate: Mon May 25 03:12:59 2026 -0500

    [tfmtodit]: Migrate from `strsave()` to strdup(3).
    
    * src/utils/tfmtodit/tfmtodit.cpp (char_list::char_list, main): Migrate
      from libgroff's `strsave()` to POSIX's strdup(3).
    
    Continues the long process of fixing Savannah #66672.
---
 ChangeLog                       | 7 +++++++
 src/utils/tfmtodit/tfmtodit.cpp | 6 ++++--
 2 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index a61dbb876..28d4a9ba4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2026-05-25  G. Branden Robinson <[email protected]>
+
+       * src/utils/tfmtodit/tfmtodit.cpp (char_list::char_list, main):
+       Migrate from libgroff's `strsave()` to POSIX's strdup(3).
+
+       Continues the long process of fixing Savannah #66672.
+
 2026-05-25  G. Branden Robinson <[email protected]>
 
        * src/utils/tfmtodit/tfmtodit.cpp (main): Use ISO C standard
diff --git a/src/utils/tfmtodit/tfmtodit.cpp b/src/utils/tfmtodit/tfmtodit.cpp
index c509196ec..c38e56e57 100644
--- a/src/utils/tfmtodit/tfmtodit.cpp
+++ b/src/utils/tfmtodit/tfmtodit.cpp
@@ -56,6 +56,8 @@ both be zero. */
 #include <math.h> // atan2(), M_PI
 #include <stdcountof.h>
 #include <stdlib.h> // exit(), EXIT_FAILURE, EXIT_SUCCESS, strtol()
+#include <string.h> // memcmp(), strcmp(), strdup(), strerror(),
+                   // strlen(), strrchr(), strtok()
 
 #include <getopt.h> // getopt_long()
 
@@ -606,7 +608,7 @@ struct char_list {
   char_list(const char *, char_list * = 0);
 };
 
-char_list::char_list(const char *s, char_list *p) : ch(strsave(s)),
+char_list::char_list(const char *s, char_list *p) : ch(strdup(s)),
                     next(p)
 {
 }
@@ -797,7 +799,7 @@ int main(int argc, char **argv)
   printf("name %s\n", font_file);
   if (is_font_special)
     fputs("special\n", stdout);
-  char *internal_name = strsave(argv[optind]);
+  char *internal_name = strdup(argv[optind]);
   size_t len = strlen(internal_name);
   if ((len > 4) && (strcmp(internal_name + len - 4, ".tfm") == 0))
     internal_name[len - 4] = '\0';

_______________________________________________
groff-commit mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/groff-commit

Reply via email to