From 24f5931c5e0120982c0cbf1896641e3ef2bdd52f Mon Sep 17 00:00:00 2001 From: Ivan Penkov Date: Mon, 20 Jun 2016 11:14:47 -0700 Subject: Server-side workaround to handle overlapping modules. This change is resolving an issue that was caused by the combination of: - Android system libraries being relro packed in N+. - Breakpad dealing with relro packed libraries in a hack way. This is a fix for http://crbug/611824. I also found an use-after-free issue (bug in Minidump::SeekToStreamType). I disallowed the MinidumpStreamInfo copy and assign constructors and the compiler detected another similar issue in Minidump::Print. Then I disabled the copy and assign constructors for most classes in minidump.h (just in case). There are a couple of classes where I couldn't disallow them (since assign is used). This will require a small refactor so I left it out of this CL. R=mark@chromium.org Review URL: https://codereview.chromium.org/2060663002 . --- src/client/linux/minidump_writer/minidump_writer_unittest.cc | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/client/linux/minidump_writer') diff --git a/src/client/linux/minidump_writer/minidump_writer_unittest.cc b/src/client/linux/minidump_writer/minidump_writer_unittest.cc index db7d4f5d..2e4749e7 100644 --- a/src/client/linux/minidump_writer/minidump_writer_unittest.cc +++ b/src/client/linux/minidump_writer/minidump_writer_unittest.cc @@ -169,6 +169,7 @@ TEST(MinidumpWriterTest, MappingInfo) { info.start_addr = kMemoryAddress; info.size = memory_size; info.offset = 0; + info.exec = false; strcpy(info.name, kMemoryName); MappingList mappings; @@ -323,6 +324,7 @@ TEST(MinidumpWriterTest, MappingInfoContained) { info.start_addr = kMemoryAddress - memory_size; info.size = memory_size * 3; info.offset = 0; + info.exec = false; strcpy(info.name, kMemoryName); MappingList mappings; -- cgit v1.2.1