Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(14)

Side by Side Diff: chrome/browser/extensions/extension_process_manager.cc

Issue 12189018: <webview>: Implement WebRequest API (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Diff from latest patch Created 7 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "base/bind.h" 5 #include "base/bind.h"
6 #include "base/command_line.h" 6 #include "base/command_line.h"
7 #include "base/lazy_instance.h" 7 #include "base/lazy_instance.h"
8 #include "base/logging.h" 8 #include "base/logging.h"
9 #include "base/message_loop.h" 9 #include "base/message_loop.h"
10 #include "base/metrics/histogram.h" 10 #include "base/metrics/histogram.h"
(...skipping 433 matching lines...) Expand 10 before | Expand all | Expand 10 after
444 444
445 return count; 445 return count;
446 } 446 }
447 447
448 int ExtensionProcessManager::DecrementLazyKeepaliveCount( 448 int ExtensionProcessManager::DecrementLazyKeepaliveCount(
449 const Extension* extension) { 449 const Extension* extension) {
450 if (!extension->has_lazy_background_page()) 450 if (!extension->has_lazy_background_page())
451 return 0; 451 return 0;
452 452
453 int& count = background_page_data_[extension->id()].lazy_keepalive_count; 453 int& count = background_page_data_[extension->id()].lazy_keepalive_count;
454 DCHECK_GT(count, 0); 454 // TODO(fsamuel): What to do here? This fires when using WebRequests in
455 // <webview>.
Matt Perry 2013/02/06 22:40:24 That's not good. These refcount errors are not fun
Fady Samuel 2013/05/15 21:58:53 Fixed. Calling IncrementInFlightEventsOnUI in Even
456 //DCHECK_GT(count, 0);
455 if (--count == 0) { 457 if (--count == 0) {
456 MessageLoop::current()->PostDelayedTask( 458 MessageLoop::current()->PostDelayedTask(
457 FROM_HERE, 459 FROM_HERE,
458 base::Bind(&ExtensionProcessManager::OnLazyBackgroundPageIdle, 460 base::Bind(&ExtensionProcessManager::OnLazyBackgroundPageIdle,
459 weak_ptr_factory_.GetWeakPtr(), extension->id(), 461 weak_ptr_factory_.GetWeakPtr(), extension->id(),
460 ++background_page_data_[extension->id()].close_sequence_id), 462 ++background_page_data_[extension->id()].close_sequence_id),
461 event_page_idle_time_); 463 event_page_idle_time_);
462 } 464 }
463 465
464 return count; 466 return count;
(...skipping 391 matching lines...) Expand 10 before | Expand all | Expand 10 after
856 CreateBackgroundHostsForProfileStartup(GetProfile(), 858 CreateBackgroundHostsForProfileStartup(GetProfile(),
857 this, service->extensions()); 859 this, service->extensions());
858 } 860 }
859 break; 861 break;
860 } 862 }
861 default: 863 default:
862 ExtensionProcessManager::Observe(type, source, details); 864 ExtensionProcessManager::Observe(type, source, details);
863 break; 865 break;
864 } 866 }
865 } 867 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698