diff options
author | Yabin Cui <yabinc@google.com> | 2015-09-30 19:43:59 +0200 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2015-09-30 19:43:59 +0200 |
commit | 4b66a280d314ab5aeb5027fe5b0023ae1f25ecca (patch) | |
tree | 7de1f19a0c1df276d7d1919cf7b156442b9738d8 | |
parent | Merge changes Ic769eafc,I63f28b3b (diff) | |
parent | minadbd: use strdup() to create argument for sideload thread. (diff) | |
download | android_bootable_recovery-4b66a280d314ab5aeb5027fe5b0023ae1f25ecca.tar android_bootable_recovery-4b66a280d314ab5aeb5027fe5b0023ae1f25ecca.tar.gz android_bootable_recovery-4b66a280d314ab5aeb5027fe5b0023ae1f25ecca.tar.bz2 android_bootable_recovery-4b66a280d314ab5aeb5027fe5b0023ae1f25ecca.tar.lz android_bootable_recovery-4b66a280d314ab5aeb5027fe5b0023ae1f25ecca.tar.xz android_bootable_recovery-4b66a280d314ab5aeb5027fe5b0023ae1f25ecca.tar.zst android_bootable_recovery-4b66a280d314ab5aeb5027fe5b0023ae1f25ecca.zip |
-rw-r--r-- | minadbd/services.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/minadbd/services.cpp b/minadbd/services.cpp index 2a3027bd8..d25648fb4 100644 --- a/minadbd/services.cpp +++ b/minadbd/services.cpp @@ -43,13 +43,14 @@ void* service_bootstrap_func(void* x) { } static void sideload_host_service(int sfd, void* data) { - const char* args = reinterpret_cast<const char*>(data); + char* args = reinterpret_cast<char*>(data); int file_size; int block_size; if (sscanf(args, "%d:%d", &file_size, &block_size) != 2) { printf("bad sideload-host arguments: %s\n", args); exit(1); } + free(args); printf("sideload-host file size %d block size %d\n", file_size, block_size); @@ -94,7 +95,8 @@ int service_to_fd(const char* name, const atransport* transport) { // sideload-host). exit(3); } else if (!strncmp(name, "sideload-host:", 14)) { - ret = create_service_thread(sideload_host_service, (void*)(name + 14)); + char* arg = strdup(name + 14); + ret = create_service_thread(sideload_host_service, arg); } if (ret >= 0) { close_on_exec(ret); |