From db3342a10ec30902aa9018b80e1d9a40bd01c487 Mon Sep 17 00:00:00 2001 From: mmentovai Date: Tue, 5 Dec 2006 22:52:28 +0000 Subject: Module API (#32). r=waylonis, bryner - Introduces a standard API for dealing with modules. MinidumpModule is now a concrete implementation of this API. Code may interact with single modules using the CodeModule interface, and collections of modules using its container, the CodeModules interface. - CodeModule is used directly by SymbolSupplier implementations and SourceLineResolver. Reliance on the specific implementation in MinidumpModule has been eliminated. - Module lists are now added to ProcessState objects. Module references in each stack frame are now pointers to objects in these module lists. - The sample minidump_stackwalk tool prints the module list after printing all threads' stacks. http://groups.google.com/group/airbag-dev/browse_frm/thread/a9c0550edde54cf8 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@74 4c0a9323-5329-0410-9bdc-e9ce6186880e --- src/processor/testdata/minidump2.dump.out | 91 ++++++++++++++++++++++--------- 1 file changed, 65 insertions(+), 26 deletions(-) (limited to 'src/processor/testdata/minidump2.dump.out') diff --git a/src/processor/testdata/minidump2.dump.out b/src/processor/testdata/minidump2.dump.out index 492d5b5d..910f6256 100644 --- a/src/processor/testdata/minidump2.dump.out +++ b/src/processor/testdata/minidump2.dump.out @@ -200,13 +200,16 @@ MDRawModule cv_record.rva = 0x132c misc_record.data_size = 0 misc_record.rva = 0x0 - (module_name) = "c:\test_app.exe" + (code_file) = "c:\test_app.exe" + (code_identifier) = "454fa44d2b000" (cv_record).cv_signature = 0x53445352 (cv_record).signature = 8ddb7e9a-3657-4893-8d6e-b08b1dca31aa (cv_record).age = 1 (cv_record).pdb_file_name = "c:\test_app.pdb" (misc_record) = (null) - (debug_filename) = "c:\test_app.pdb" + (debug_file) = "c:\test_app.pdb" + (debug_identifier) = "8DDB7E9A365748938D6EB08B1DCA31AA1" + (version) = "" module[1] MDRawModule @@ -229,13 +232,16 @@ MDRawModule cv_record.rva = 0x1354 misc_record.data_size = 0 misc_record.rva = 0x0 - (module_name) = "C:\WINDOWS\system32\ntdll.dll" + (code_file) = "C:\WINDOWS\system32\ntdll.dll" + (code_identifier) = "411096b4b0000" (cv_record).cv_signature = 0x53445352 (cv_record).signature = 36515fb5-d043-45e4-91f6-72fa2e2878c0 (cv_record).age = 2 (cv_record).pdb_file_name = "ntdll.pdb" (misc_record) = (null) - (debug_filename) = "ntdll.pdb" + (debug_file) = "ntdll.pdb" + (debug_identifier) = "36515FB5D04345E491F672FA2E2878C02" + (version) = "5.1.2600.2180" module[2] MDRawModule @@ -258,13 +264,16 @@ MDRawModule cv_record.rva = 0x1376 misc_record.data_size = 0 misc_record.rva = 0x0 - (module_name) = "C:\WINDOWS\system32\kernel32.dll" + (code_file) = "C:\WINDOWS\system32\kernel32.dll" + (code_identifier) = "44ab9a84f4000" (cv_record).cv_signature = 0x53445352 (cv_record).signature = bce8785c-57b4-4245-a669-896b6a19b954 (cv_record).age = 2 (cv_record).pdb_file_name = "kernel32.pdb" (misc_record) = (null) - (debug_filename) = "kernel32.pdb" + (debug_file) = "kernel32.pdb" + (debug_identifier) = "BCE8785C57B44245A669896B6A19B9542" + (version) = "5.1.2600.2945" module[3] MDRawModule @@ -287,13 +296,16 @@ MDRawModule cv_record.rva = 0x139b misc_record.data_size = 0 misc_record.rva = 0x0 - (module_name) = "C:\WINDOWS\system32\ole32.dll" + (code_file) = "C:\WINDOWS\system32\ole32.dll" + (code_identifier) = "42e5be9313d000" (cv_record).cv_signature = 0x53445352 (cv_record).signature = 683b65b2-46f4-4187-96d2-ee6d4c55eb11 (cv_record).age = 2 (cv_record).pdb_file_name = "ole32.pdb" (misc_record) = (null) - (debug_filename) = "ole32.pdb" + (debug_file) = "ole32.pdb" + (debug_identifier) = "683B65B246F4418796D2EE6D4C55EB112" + (version) = "5.1.2600.2726" module[4] MDRawModule @@ -316,13 +328,16 @@ MDRawModule cv_record.rva = 0x13bd misc_record.data_size = 0 misc_record.rva = 0x0 - (module_name) = "C:\WINDOWS\system32\advapi32.dll" + (code_file) = "C:\WINDOWS\system32\advapi32.dll" + (code_identifier) = "411096a79b000" (cv_record).cv_signature = 0x53445352 (cv_record).signature = 455d6c5f-184d-45bb-b5c5-f30f82975114 (cv_record).age = 2 (cv_record).pdb_file_name = "advapi32.pdb" (misc_record) = (null) - (debug_filename) = "advapi32.pdb" + (debug_file) = "advapi32.pdb" + (debug_identifier) = "455D6C5F184D45BBB5C5F30F829751142" + (version) = "5.1.2600.2180" module[5] MDRawModule @@ -345,13 +360,16 @@ MDRawModule cv_record.rva = 0x13e2 misc_record.data_size = 0 misc_record.rva = 0x0 - (module_name) = "C:\WINDOWS\system32\rpcrt4.dll" + (code_file) = "C:\WINDOWS\system32\rpcrt4.dll" + (code_identifier) = "411096ae91000" (cv_record).cv_signature = 0x53445352 (cv_record).signature = bea45a72-1da1-41da-a3ba-86b3a2031153 (cv_record).age = 2 (cv_record).pdb_file_name = "rpcrt4.pdb" (misc_record) = (null) - (debug_filename) = "rpcrt4.pdb" + (debug_file) = "rpcrt4.pdb" + (debug_identifier) = "BEA45A721DA141DAA3BA86B3A20311532" + (version) = "5.1.2600.2180" module[6] MDRawModule @@ -374,13 +392,16 @@ MDRawModule cv_record.rva = 0x1405 misc_record.data_size = 0 misc_record.rva = 0x0 - (module_name) = "C:\WINDOWS\system32\gdi32.dll" + (code_file) = "C:\WINDOWS\system32\gdi32.dll" + (code_identifier) = "43b34feb47000" (cv_record).cv_signature = 0x53445352 (cv_record).signature = c0ea66be-00a6-4bd7-aef7-9e443a91869c (cv_record).age = 2 (cv_record).pdb_file_name = "gdi32.pdb" (misc_record) = (null) - (debug_filename) = "gdi32.pdb" + (debug_file) = "gdi32.pdb" + (debug_identifier) = "C0EA66BE00A64BD7AEF79E443A91869C2" + (version) = "5.1.2600.2818" module[7] MDRawModule @@ -403,13 +424,16 @@ MDRawModule cv_record.rva = 0x1427 misc_record.data_size = 0 misc_record.rva = 0x0 - (module_name) = "C:\WINDOWS\system32\user32.dll" + (code_file) = "C:\WINDOWS\system32\user32.dll" + (code_identifier) = "4226015990000" (cv_record).cv_signature = 0x53445352 (cv_record).signature = ee2b714d-83a3-4c9d-8802-7621272f8326 (cv_record).age = 2 (cv_record).pdb_file_name = "user32.pdb" (misc_record) = (null) - (debug_filename) = "user32.pdb" + (debug_file) = "user32.pdb" + (debug_identifier) = "EE2B714D83A34C9D88027621272F83262" + (version) = "5.1.2600.2622" module[8] MDRawModule @@ -432,13 +456,16 @@ MDRawModule cv_record.rva = 0x144a misc_record.data_size = 0 misc_record.rva = 0x0 - (module_name) = "C:\WINDOWS\system32\msvcrt.dll" + (code_file) = "C:\WINDOWS\system32\msvcrt.dll" + (code_identifier) = "4110975258000" (cv_record).cv_signature = 0x53445352 (cv_record).signature = a678f3c3-0ded-426b-8390-32b996987e38 (cv_record).age = 1 (cv_record).pdb_file_name = "msvcrt.pdb" (misc_record) = (null) - (debug_filename) = "msvcrt.pdb" + (debug_file) = "msvcrt.pdb" + (debug_identifier) = "A678F3C30DED426B839032B996987E381" + (version) = "7.0.2600.2180" module[9] MDRawModule @@ -461,13 +488,16 @@ MDRawModule cv_record.rva = 0x146d misc_record.data_size = 0 misc_record.rva = 0x0 - (module_name) = "C:\WINDOWS\system32\imm32.dll" + (code_file) = "C:\WINDOWS\system32\imm32.dll" + (code_identifier) = "411096ae1d000" (cv_record).cv_signature = 0x53445352 (cv_record).signature = 2c17a49c-251b-4c8e-b9e2-ad13d7d9ea16 (cv_record).age = 2 (cv_record).pdb_file_name = "imm32.pdb" (misc_record) = (null) - (debug_filename) = "imm32.pdb" + (debug_file) = "imm32.pdb" + (debug_identifier) = "2C17A49C251B4C8EB9E2AD13D7D9EA162" + (version) = "5.1.2600.2180" module[10] MDRawModule @@ -490,13 +520,16 @@ MDRawModule cv_record.rva = 0x148f misc_record.data_size = 0 misc_record.rva = 0x0 - (module_name) = "C:\WINDOWS\system32\dbghelp.dll" + (code_file) = "C:\WINDOWS\system32\dbghelp.dll" + (code_identifier) = "4110969aa1000" (cv_record).cv_signature = 0x53445352 (cv_record).signature = 39559573-e21b-46f2-8e28-6923be9e6a76 (cv_record).age = 1 (cv_record).pdb_file_name = "dbghelp.pdb" (misc_record) = (null) - (debug_filename) = "dbghelp.pdb" + (debug_file) = "dbghelp.pdb" + (debug_identifier) = "39559573E21B46F28E286923BE9E6A761" + (version) = "5.1.2600.2180" module[11] MDRawModule @@ -519,13 +552,16 @@ MDRawModule cv_record.rva = 0x14b3 misc_record.data_size = 0 misc_record.rva = 0x0 - (module_name) = "C:\WINDOWS\system32\version.dll" + (code_file) = "C:\WINDOWS\system32\version.dll" + (code_identifier) = "411096b78000" (cv_record).cv_signature = 0x53445352 (cv_record).signature = 180a90c4-0384-463e-82dd-c45b2c8ab76e (cv_record).age = 2 (cv_record).pdb_file_name = "version.pdb" (misc_record) = (null) - (debug_filename) = "version.pdb" + (debug_file) = "version.pdb" + (debug_identifier) = "180A90C40384463E82DDC45B2C8AB76E2" + (version) = "5.1.2600.2180" module[12] MDRawModule @@ -548,13 +584,16 @@ MDRawModule cv_record.rva = 0x14d7 misc_record.data_size = 0 misc_record.rva = 0x0 - (module_name) = "C:\WINDOWS\system32\psapi.dll" + (code_file) = "C:\WINDOWS\system32\psapi.dll" + (code_identifier) = "411096cab000" (cv_record).cv_signature = 0x53445352 (cv_record).signature = a5c3a1f9-689f-43d8-ad22-8a0929388970 (cv_record).age = 2 (cv_record).pdb_file_name = "psapi.pdb" (misc_record) = (null) - (debug_filename) = "psapi.pdb" + (debug_file) = "psapi.pdb" + (debug_identifier) = "A5C3A1F9689F43D8AD228A09293889702" + (version) = "5.1.2600.2180" MinidumpMemoryList region_count = 3 -- cgit v1.2.1