Merge changes from topic 'debuggerd_snprintf'
* changes:
crash_dump: fix typos in error messages.
debuggerd_handler: don't use snprintf in handler.
diff --git a/debuggerd/crash_dump.cpp b/debuggerd/crash_dump.cpp
index 0ca90c3..d4be25b 100644
--- a/debuggerd/crash_dump.cpp
+++ b/debuggerd/crash_dump.cpp
@@ -218,7 +218,7 @@
}
if (proc_info.pid != expected_pid) {
- LOG(FATAL) << "pid mismatch: expected " << expected_pid << ", actual " << proc_info.ppid;
+ LOG(FATAL) << "pid mismatch: expected " << expected_pid << ", actual " << proc_info.pid;
}
}
@@ -254,7 +254,7 @@
}
if (!android::base::ParseInt(argv[2], &pseudothread_tid, 1, std::numeric_limits<pid_t>::max())) {
- LOG(FATAL) << "invalid pseudothread tid: " << argv[1];
+ LOG(FATAL) << "invalid pseudothread tid: " << argv[2];
}
android::procinfo::ProcessInfo target_info;
diff --git a/debuggerd/handler/debuggerd_handler.cpp b/debuggerd/handler/debuggerd_handler.cpp
index a5de83a..b1dc01a 100644
--- a/debuggerd/handler/debuggerd_handler.cpp
+++ b/debuggerd/handler/debuggerd_handler.cpp
@@ -81,7 +81,7 @@
va_start(args, fmt);
char buf[4096];
- vsnprintf(buf, sizeof(buf), fmt, args);
+ __libc_format_buffer_va_list(buf, sizeof(buf), fmt, args);
fatal("%s: %s", buf, strerror(err));
}
@@ -256,8 +256,9 @@
char main_tid[10];
char pseudothread_tid[10];
- snprintf(main_tid, sizeof(main_tid), "%d", thread_info->crashing_tid);
- snprintf(pseudothread_tid, sizeof(pseudothread_tid), "%d", thread_info->pseudothread_tid);
+ __libc_format_buffer(main_tid, sizeof(main_tid), "%d", thread_info->crashing_tid);
+ __libc_format_buffer(pseudothread_tid, sizeof(pseudothread_tid), "%d", thread_info->pseudothread_tid);
+
execl(CRASH_DUMP_PATH, CRASH_DUMP_NAME, main_tid, pseudothread_tid, nullptr);
fatal_errno("exec failed");