Index: content/browser/browser_process_sub_thread.cc |
diff --git a/content/browser/browser_process_sub_thread.cc b/content/browser/browser_process_sub_thread.cc |
index 9a5b78a9edb0096cf39c4b9160294ba85379b82e..b1904e10971814c4ff0dd594b179eb0dfab5b02b 100644 |
--- a/content/browser/browser_process_sub_thread.cc |
+++ b/content/browser/browser_process_sub_thread.cc |
@@ -6,8 +6,10 @@ |
#include "base/debug/leak_tracker.h" |
#include "base/threading/thread_restrictions.h" |
+#include "base/trace_event/memory_dump_manager.h" |
#include "build/build_config.h" |
#include "content/browser/browser_child_process_host_impl.h" |
+#include "content/browser/gpu/browser_gpu_memory_buffer_manager.h" |
#include "content/browser/notification_service_impl.h" |
#include "net/url_request/url_fetcher.h" |
#include "net/url_request/url_request.h" |
@@ -70,6 +72,10 @@ void BrowserProcessSubThread::IOThreadPreCleanUp() { |
// IO thread only resources they are referencing. |
BrowserChildProcessHostImpl::TerminateAll(); |
#endif // !defined(OS_IOS) |
+ |
+ // Unregister GpuMemoryBuffer dump provider before IO thread is shut down. |
+ base::trace_event::MemoryDumpManager::GetInstance()->UnregisterDumpProvider( |
+ BrowserGpuMemoryBufferManager::current()); |
} |
} // namespace content |