Index: chromecast/browser/cast_browser_main_parts.cc |
diff --git a/chromecast/browser/cast_browser_main_parts.cc b/chromecast/browser/cast_browser_main_parts.cc |
index d098b063e22e7e5eed15cac013c518ba6368119a..b86d7a57fe9d73cfffc3006e2190fb5b3cc6cf33 100644 |
--- a/chromecast/browser/cast_browser_main_parts.cc |
+++ b/chromecast/browser/cast_browser_main_parts.cc |
@@ -40,6 +40,7 @@ |
#include "chromecast/browser/pref_service_helper.h" |
#include "chromecast/browser/url_request_context_factory.h" |
#include "chromecast/chromecast_features.h" |
+#include "chromecast/common/global_descriptors.h" |
#include "chromecast/common/platform_client_auth.h" |
#include "chromecast/media/base/key_systems_common.h" |
#include "chromecast/media/base/media_resource_tracker.h" |
@@ -281,7 +282,10 @@ CastBrowserMainParts::CastBrowserMainParts( |
} |
CastBrowserMainParts::~CastBrowserMainParts() { |
-#if !defined(OS_ANDROID) |
+#if defined(OS_ANDROID) |
+ breakpad::CrashDumpObserver::GetInstance()->UnregisterClient( |
+ crash_dump_manager_); |
+#else |
if (media_thread_ && media_pipeline_backend_manager_) { |
// Make sure that media_pipeline_backend_manager_ is destroyed after any |
// pending media thread tasks. The CastAudioOutputStream implementation |
@@ -297,7 +301,7 @@ CastBrowserMainParts::~CastBrowserMainParts() { |
media_thread_->task_runner()->DeleteSoon( |
FROM_HERE, media_pipeline_backend_manager_.release()); |
} |
-#endif // !defined(OS_ANDROID) |
+#endif // defined(OS_ANDROID) |
} |
scoped_refptr<base::SingleThreadTaskRunner> |
@@ -390,8 +394,11 @@ int CastBrowserMainParts::PreCreateThreads() { |
if (!chromecast::CrashHandler::GetCrashDumpLocation(&crash_dumps_dir)) { |
LOG(ERROR) << "Could not find crash dump location."; |
} |
- cast_browser_process_->SetCrashDumpManager( |
- base::MakeUnique<breakpad::CrashDumpManager>(crash_dumps_dir)); |
+ breakpad::CrashDumpObserver::Create(); |
+ crash_dump_manager_ = new breakpad::CrashDumpManager( |
+ crash_dumps_dir, kAndroidMinidumpDescriptor); |
+ breakpad::CrashDumpObserver::GetInstance()->RegisterClient( |
+ crash_dump_manager_); |
#else |
base::FilePath home_dir; |
CHECK(PathService::Get(DIR_CAST_HOME, &home_dir)); |