]> granicus.if.org Git - graphviz/commitdiff
remove direct use of environ
authorMatthew Fernandez <matthew.fernandez@gmail.com>
Tue, 22 Sep 2020 02:33:10 +0000 (19:33 -0700)
committerMatthew Fernandez <matthew.fernandez@gmail.com>
Tue, 29 Sep 2020 00:24:56 +0000 (17:24 -0700)
This code was manually parsing environment variable settings for some reason. It
also (incorrectly) assumed $_ would always be the first environment variable.

lib/ast/pathpath.c

index 6feb1e8821646d80c6a9db1a709a5f9c02218e58..458beed5417e34a7d8021aea6d16ca56812c5503 100644 (file)
@@ -82,8 +82,8 @@ char *pathpath(char *path, const char *p, const char *a, int mode)
            (strchr(s, '/') ||
             (((s = cmd) || (opt_info_argv && (s = *opt_info_argv))) &&
              strchr(s, '/') && !strchr(s, '\n') && !access(s, F_OK)) ||
-            (environ && (s = *environ) && *s++ == '_' &&
-             *s++ == '=' && strchr(s, '/') && !strneq(s, "/bin/", 5) &&
+            ((s = getenv("_")) &&
+             strchr(s, '/') && !strneq(s, "/bin/", 5) &&
              !strneq(s, "/usr/bin/", 9)) ||
             (*x && !access(x, F_OK) && (s = getenv("PWD")) && *s == '/')
            )