Index: chrome/browser/extensions/lazy_background_task_queue.cc |
diff --git a/chrome/browser/extensions/lazy_background_task_queue.cc b/chrome/browser/extensions/lazy_background_task_queue.cc |
index 7df7779c3e9e68bddb191c20a3074d8ecfc12771..0d13a93dde6646e5b571158a595cf787d96a9665 100644 |
--- a/chrome/browser/extensions/lazy_background_task_queue.cc |
+++ b/chrome/browser/extensions/lazy_background_task_queue.cc |
@@ -5,6 +5,7 @@ |
#include "chrome/browser/extensions/lazy_background_task_queue.h" |
#include "base/callback.h" |
+#include "chrome/browser/browser_process.h" |
#include "chrome/browser/chrome_notification_types.h" |
#include "chrome/browser/extensions/extension_host.h" |
#include "chrome/browser/extensions/extension_process_manager.h" |
@@ -58,6 +59,10 @@ void LazyBackgroundTaskQueue::AddPendingTask( |
Profile* profile, |
const std::string& extension_id, |
const PendingTask& task) { |
+ if (g_browser_process->IsShuttingDown()) { |
+ task.Run(NULL); |
+ return; |
+ } |
PendingTasksList* tasks_list = NULL; |
PendingTasksKey key(profile, extension_id); |
PendingTasksMap::iterator it = pending_tasks_.find(key); |