From c2f4d0240b3a9b905dff5b546924865f15241481 Mon Sep 17 00:00:00 2001 From: Mathieu Chartier Date: Mon, 3 Mar 2014 16:11:42 -0800 Subject: Fix SafePrettyTypeOf to never call VerifyObject. Calling VerifyObject from the segfault handler caused another segfault. Change-Id: I459646594d830cbb110a4ac2bac25a7b90794854 --- runtime/runtime_android.cc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'runtime/runtime_android.cc') diff --git a/runtime/runtime_android.cc b/runtime/runtime_android.cc index 14e5574..a237722 100644 --- a/runtime/runtime_android.cc +++ b/runtime/runtime_android.cc @@ -27,6 +27,8 @@ namespace art { +static constexpr bool kDumpHeapObjectOnSigsevg = false; + struct sigaction old_action; void HandleUnexpectedSignal(int signal_number, siginfo_t* info, void* raw_context) { static bool handlingUnexpectedSignal = false; @@ -44,7 +46,7 @@ void HandleUnexpectedSignal(int signal_number, siginfo_t* info, void* raw_contex // Print this out first in case DumpObject faults. LOG(INTERNAL_FATAL) << "Fault message: " << runtime->GetFaultMessage(); gc::Heap* heap = runtime->GetHeap(); - if (heap != nullptr && info != nullptr) { + if (kDumpHeapObjectOnSigsevg && heap != nullptr && info != nullptr) { LOG(INTERNAL_FATAL) << "Dump heap object at fault address: "; heap->DumpObject(LOG(INTERNAL_FATAL), reinterpret_cast(info->si_addr)); } -- cgit v1.1