diff options
Diffstat (limited to '')
-rw-r--r-- | install.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/install.cpp b/install.cpp index 5a439a1d6..faab34fbb 100644 --- a/install.cpp +++ b/install.cpp @@ -189,13 +189,13 @@ try_update_binary(const char* path, ZipArchive* zip, bool* wipe_cache, // update attempt. // - const char** args = (const char**)malloc(sizeof(char*) * 6); + const char* args[6]; args[0] = binary; args[1] = EXPAND(RECOVERY_API_VERSION); // defined in Android.mk - char* temp = (char*)malloc(10); - sprintf(temp, "%d", pipefd[1]); + char temp[16]; + snprintf(temp, sizeof(temp), "%d", pipefd[1]); args[2] = temp; - args[3] = (char*)path; + args[3] = path; args[4] = retry_count > 0 ? "retry" : NULL; args[5] = NULL; @@ -203,7 +203,7 @@ try_update_binary(const char* path, ZipArchive* zip, bool* wipe_cache, if (pid == 0) { umask(022); close(pipefd[0]); - execv(binary, (char* const*)args); + execv(binary, const_cast<char**>(args)); fprintf(stdout, "E:Can't run %s (%s)\n", binary, strerror(errno)); _exit(-1); } |