Ensure get_server_path() retval is freeable

PR #2276 <https://github.com/Genymobile/scrcpy/pull/2276>

Signed-off-by: Romain Vimont <rom@rom1v.com>
This commit is contained in:
Frank Leon Rose 2021-04-22 13:59:46 -04:00 committed by Romain Vimont
parent b9c3f65fd8
commit aaf7875d92

View file

@ -58,7 +58,7 @@ get_server_path(void) {
LOGE("Could not get executable path, " LOGE("Could not get executable path, "
"using " SERVER_FILENAME " from current directory"); "using " SERVER_FILENAME " from current directory");
// not found, use current directory // not found, use current directory
return SERVER_FILENAME; return strdup(SERVER_FILENAME);
} }
char *dir = dirname(executable_path); char *dir = dirname(executable_path);
size_t dirlen = strlen(dir); size_t dirlen = strlen(dir);
@ -70,7 +70,7 @@ get_server_path(void) {
LOGE("Could not alloc server path string, " LOGE("Could not alloc server path string, "
"using " SERVER_FILENAME " from current directory"); "using " SERVER_FILENAME " from current directory");
free(executable_path); free(executable_path);
return SERVER_FILENAME; return strdup(SERVER_FILENAME);
} }
memcpy(server_path, dir, dirlen); memcpy(server_path, dir, dirlen);