]> git.ipfire.org Git - thirdparty/ccache.git/commitdiff
Improve detection of program name being MYNAME
authorJoel Rosdahl <joel@rosdahl.net>
Sat, 27 Feb 2010 09:56:22 +0000 (10:56 +0100)
committerJoel Rosdahl <joel@rosdahl.net>
Sat, 27 Feb 2010 11:36:41 +0000 (12:36 +0100)
ccache.c

index 839dc0921dd7ce14892d9251c0f2700350abfd33..c3d31aea4d9d9e7a38a5423c7fd734ea49d55e6d 100644 (file)
--- a/ccache.c
+++ b/ccache.c
@@ -1779,6 +1779,7 @@ static void setup_uncached_err(void)
 int main(int argc, char *argv[])
 {
        char *p;
+       char *program_name;
 
        current_working_dir = get_cwd();
        cache_dir = getenv("CCACHE_DIR");
@@ -1790,8 +1791,8 @@ int main(int argc, char *argv[])
        }
 
        /* check if we are being invoked as "ccache" */
-       if (strlen(argv[0]) >= strlen(MYNAME) &&
-           strcmp(argv[0] + strlen(argv[0]) - strlen(MYNAME), MYNAME) == 0) {
+       program_name = str_basename(argv[0]);
+       if (strcmp(program_name, MYNAME) == 0) {
                if (argc < 2) {
                        fputs(USAGE_TEXT, stderr);
                        exit(1);
@@ -1802,6 +1803,7 @@ int main(int argc, char *argv[])
                        return ccache_main(argc, argv);
                }
        }
+       free(program_name);
 
        check_cache_dir();