[Lldb-commits] [PATCH] D55614: Fix MinidumpParser::GetFilteredModuleList() and test it

Greg Clayton via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Wed Dec 12 13:35:44 PST 2018


clayborg created this revision.
clayborg added reviewers: zturner, labath, markmentovai, lemo.

The MinidumpParser::GetFilteredModuleList() code was attempting to iterate through the entire module list and if it found more than one entry for a given module name, it wanted to pick the MinidumpModule with the lowest address. A bug existed where it wasn't doing that due to "exists" variable being inverted. "exists" was set to try if it was inserted. Furthermore, the order of the modules would be modified by sorting all modules from low address to high address (using MinidumpModule::base_of_image). This fix also maintains the original order which means your executable is at index 0 as intended instead of some random shared library.

Tests were added to ensure this functionality doesn't regress.


https://reviews.llvm.org/D55614

Files:
  source/Plugins/Process/minidump/MinidumpParser.cpp
  unittests/Process/minidump/Inputs/modules-dup-min-addr.dmp
  unittests/Process/minidump/Inputs/modules-order.dmp
  unittests/Process/minidump/MinidumpParserTest.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D55614.177902.patch
Type: text/x-patch
Size: 4731 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20181212/740b786c/attachment.bin>


More information about the lldb-commits mailing list