aboutsummaryrefslogtreecommitdiff
path: root/src/client/linux/minidump_writer/linux_core_dumper_unittest.cc
diff options
context:
space:
mode:
authorDominik Laskowski <domlaskowski@chromium.org>2016-03-03 16:14:00 -0500
committerMike Frysinger <vapier@chromium.org>2016-03-07 21:35:43 -0500
commit4d690507171bff0f29dcf382b6909888d2f3bd17 (patch)
treefe354e7b4b6ca1885de68547cea5194e7f6da632 /src/client/linux/minidump_writer/linux_core_dumper_unittest.cc
parentHandle multiple microdumps in system log. (diff)
downloadbreakpad-4d690507171bff0f29dcf382b6909888d2f3bd17.tar.xz
Add an optional root prefix to Linux dumpers
The Linux dumpers use absolute paths for shared libraries referenced by dumps, so they fail to locate them if the crash originated in a chroot. This CL enables callers to specify a root prefix, which is prepended to mapping paths before opening them. BUG=chromium:591792 TEST=make check Review URL: https://codereview.chromium.org/1761023002/
Diffstat (limited to 'src/client/linux/minidump_writer/linux_core_dumper_unittest.cc')
-rw-r--r--src/client/linux/minidump_writer/linux_core_dumper_unittest.cc10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/client/linux/minidump_writer/linux_core_dumper_unittest.cc b/src/client/linux/minidump_writer/linux_core_dumper_unittest.cc
index 8f6a423e..ae0c965b 100644
--- a/src/client/linux/minidump_writer/linux_core_dumper_unittest.cc
+++ b/src/client/linux/minidump_writer/linux_core_dumper_unittest.cc
@@ -39,6 +39,16 @@
using namespace google_breakpad;
+TEST(LinuxCoreDumperTest, GetMappingAbsolutePath) {
+ const LinuxCoreDumper dumper(getpid(), "core", "/tmp", "/mnt/root");
+ const MappingInfo mapping = { 0, 0, 0, false, "/usr/lib/libc.so" };
+
+ char path[PATH_MAX];
+ dumper.GetMappingAbsolutePath(mapping, path);
+
+ EXPECT_STREQ("/mnt/root/usr/lib/libc.so", path);
+}
+
TEST(LinuxCoreDumperTest, BuildProcPath) {
const pid_t pid = getpid();
const char procfs_path[] = "/procfs_copy";