Index: third_party/crashpad/crashpad/snapshot/win/module_snapshot_win.cc |
diff --git a/third_party/crashpad/crashpad/snapshot/win/module_snapshot_win.cc b/third_party/crashpad/crashpad/snapshot/win/module_snapshot_win.cc |
index 4f637370264d3607e91da9ca25c9c2e7dd8062f1..6dcbd7d1c9a1f1f9c779a95a1722bd68a576f542 100644 |
--- a/third_party/crashpad/crashpad/snapshot/win/module_snapshot_win.cc |
+++ b/third_party/crashpad/crashpad/snapshot/win/module_snapshot_win.cc |
@@ -223,6 +223,8 @@ void ModuleSnapshotWin::GetCrashpadOptionsInternal( |
if (!pe_image_reader_->GetCrashpadInfo(&crashpad_info)) { |
options->crashpad_handler_behavior = TriState::kUnset; |
options->system_crash_reporter_forwarding = TriState::kUnset; |
+ options->gather_indirectly_referenced_memory = TriState::kUnset; |
+ options->indirectly_referenced_memory_cap = 0; |
return; |
} |
@@ -237,6 +239,9 @@ void ModuleSnapshotWin::GetCrashpadOptionsInternal( |
options->gather_indirectly_referenced_memory = |
CrashpadInfoClientOptions::TriStateFromCrashpadInfo( |
crashpad_info.gather_indirectly_referenced_memory); |
+ |
+ options->indirectly_referenced_memory_cap = |
+ crashpad_info.indirectly_referenced_memory_cap; |
} |
const VS_FIXEDFILEINFO* ModuleSnapshotWin::VSFixedFileInfo() const { |
@@ -298,12 +303,14 @@ void ModuleSnapshotWin::GetCrashpadUserMinidumpStreams( |
return; |
} |
- std::unique_ptr<internal::MemorySnapshotWin> memory( |
- new internal::MemorySnapshotWin()); |
- memory->Initialize( |
- process_reader_, list_entry.base_address, list_entry.size); |
- streams->push_back( |
- new UserMinidumpStream(list_entry.stream_type, memory.release())); |
+ if (list_entry.size != 0) { |
+ std::unique_ptr<internal::MemorySnapshotWin> memory( |
+ new internal::MemorySnapshotWin()); |
+ memory->Initialize( |
+ process_reader_, list_entry.base_address, list_entry.size); |
+ streams->push_back( |
+ new UserMinidumpStream(list_entry.stream_type, memory.release())); |
+ } |
cur = list_entry.next; |
} |