diff options
author | jbates@chromium.org <jbates@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-09-02 01:38:59 +0000 |
---|---|---|
committer | jbates@chromium.org <jbates@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-09-02 01:38:59 +0000 |
commit | 400d323d53525a13fbfc47efa8a95c4b13cbccb9 (patch) | |
tree | f647ecce497271c180d9e62d88a4fcfb73328dc9 | |
parent | 95d9e253aeb47ef0004edc29c9a8c442106b9488 (diff) | |
download | chromium_src-400d323d53525a13fbfc47efa8a95c4b13cbccb9.zip chromium_src-400d323d53525a13fbfc47efa8a95c4b13cbccb9.tar.gz chromium_src-400d323d53525a13fbfc47efa8a95c4b13cbccb9.tar.bz2 |
Currently, base/timer.cc calls PostTask with FROM_HERE as the Location, so the original code that created the delayed callback is lost.
This change adds a tracked_objects::Location parameter to the APIs in base/timer.h so we can trace the PostTask callbacks. The other files are touched to add the FROM_HERE Location parameter.
Review URL: http://codereview.chromium.org/7812036
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99284 0039d316-1c4b-4281-b951-d872f2087c98
115 files changed, 235 insertions, 178 deletions
diff --git a/base/system_monitor/system_monitor.cc b/base/system_monitor/system_monitor.cc index 7b1349c..2631789 100644 --- a/base/system_monitor/system_monitor.cc +++ b/base/system_monitor/system_monitor.cc @@ -27,7 +27,7 @@ SystemMonitor::SystemMonitor() DCHECK(MessageLoop::current()); #if defined(ENABLE_BATTERY_MONITORING) - delayed_battery_check_.Start( + delayed_battery_check_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(kDelayedBatteryCheckMs), this, &SystemMonitor::BatteryCheck); #endif // defined(ENABLE_BATTERY_MONITORING) diff --git a/base/timer.cc b/base/timer.cc index ce5fab6..8c06693 100644 --- a/base/timer.cc +++ b/base/timer.cc @@ -21,7 +21,7 @@ void BaseTimer_Helper::InitiateDelayedTask(TimerTask* timer_task) { delayed_task_ = timer_task; delayed_task_->timer_ = this; MessageLoop::current()->PostDelayedTask( - FROM_HERE, timer_task, + timer_task->posted_from_, timer_task, static_cast<int>(timer_task->delay_.InMillisecondsRoundedUp())); } diff --git a/base/timer.h b/base/timer.h index 2e21582..30cb109 100644 --- a/base/timer.h +++ b/base/timer.h @@ -87,9 +87,14 @@ class BASE_EXPORT BaseTimer_Helper { // We have access to the timer_ member so we can orphan this task. class TimerTask : public Task { public: - explicit TimerTask(TimeDelta delay) : timer_(NULL), delay_(delay) { + TimerTask(const tracked_objects::Location& posted_from, + TimeDelta delay) + : posted_from_(posted_from), + timer_(NULL), + delay_(delay) { } virtual ~TimerTask() {} + tracked_objects::Location posted_from_; BaseTimer_Helper* timer_; TimeDelta delay_; }; @@ -116,9 +121,12 @@ class BaseTimer : public BaseTimer_Helper { // Call this method to start the timer. It is an error to call this method // while the timer is already running. - void Start(TimeDelta delay, Receiver* receiver, ReceiverMethod method) { + void Start(const tracked_objects::Location& posted_from, + TimeDelta delay, + Receiver* receiver, + ReceiverMethod method) { DCHECK(!IsRunning()); - InitiateDelayedTask(new TimerTask(delay, receiver, method)); + InitiateDelayedTask(new TimerTask(posted_from, delay, receiver, method)); } // Call this method to stop the timer. It is a no-op if the timer is not @@ -138,8 +146,11 @@ class BaseTimer : public BaseTimer_Helper { class TimerTask : public BaseTimer_Helper::TimerTask { public: - TimerTask(TimeDelta delay, Receiver* receiver, ReceiverMethod method) - : BaseTimer_Helper::TimerTask(delay), + TimerTask(const tracked_objects::Location& posted_from, + TimeDelta delay, + Receiver* receiver, + ReceiverMethod method) + : BaseTimer_Helper::TimerTask(posted_from, delay), receiver_(receiver), method_(method) { } @@ -162,7 +173,7 @@ class BaseTimer : public BaseTimer_Helper { } TimerTask* Clone() const { - return new TimerTask(delay_, receiver_, method_); + return new TimerTask(posted_from_, delay_, receiver_, method_); } private: @@ -221,8 +232,12 @@ class DelayTimer { public: typedef void (Receiver::*ReceiverMethod)(); - DelayTimer(TimeDelta delay, Receiver* receiver, ReceiverMethod method) - : receiver_(receiver), + DelayTimer(const tracked_objects::Location& posted_from, + TimeDelta delay, + Receiver* receiver, + ReceiverMethod method) + : posted_from_(posted_from), + receiver_(receiver), method_(method), delay_(delay) { } @@ -242,7 +257,7 @@ class DelayTimer { // The timer isn't running, or will expire too late, so restart it. timer_.Stop(); - timer_.Start(delay, this, &DelayTimer<Receiver>::Check); + timer_.Start(posted_from_, delay, this, &DelayTimer<Receiver>::Check); } void Check() { @@ -259,6 +274,7 @@ class DelayTimer { (receiver_->*method_)(); } + tracked_objects::Location posted_from_; Receiver *const receiver_; const ReceiverMethod method_; const TimeDelta delay_; diff --git a/base/timer_unittest.cc b/base/timer_unittest.cc index bb0eade..0013bcc 100644 --- a/base/timer_unittest.cc +++ b/base/timer_unittest.cc @@ -19,7 +19,7 @@ class OneShotTimerTester { delay_ms_(milliseconds) { } void Start() { - timer_.Start(TimeDelta::FromMilliseconds(delay_ms_), this, + timer_.Start(FROM_HERE, TimeDelta::FromMilliseconds(delay_ms_), this, &OneShotTimerTester::Run); } private: @@ -39,7 +39,7 @@ class OneShotSelfDeletingTimerTester { timer_(new base::OneShotTimer<OneShotSelfDeletingTimerTester>()) { } void Start() { - timer_->Start(TimeDelta::FromMilliseconds(10), this, + timer_->Start(FROM_HERE, TimeDelta::FromMilliseconds(10), this, &OneShotSelfDeletingTimerTester::Run); } private: @@ -59,7 +59,7 @@ class RepeatingTimerTester { } void Start() { - timer_.Start(TimeDelta::FromMilliseconds(10), this, + timer_.Start(FROM_HERE, TimeDelta::FromMilliseconds(10), this, &RepeatingTimerTester::Run); } private: @@ -176,7 +176,7 @@ void RunTest_DelayTimer_NoCall(MessageLoop::Type message_loop_type) { // If Delay is never called, the timer shouldn't go off. DelayTimerTarget target; - base::DelayTimer<DelayTimerTarget> timer( + base::DelayTimer<DelayTimerTarget> timer(FROM_HERE, TimeDelta::FromMilliseconds(1), &target, &DelayTimerTarget::Signal); bool did_run = false; @@ -191,7 +191,7 @@ void RunTest_DelayTimer_OneCall(MessageLoop::Type message_loop_type) { MessageLoop loop(message_loop_type); DelayTimerTarget target; - base::DelayTimer<DelayTimerTarget> timer( + base::DelayTimer<DelayTimerTarget> timer(FROM_HERE, TimeDelta::FromMilliseconds(1), &target, &DelayTimerTarget::Signal); timer.Reset(); @@ -225,7 +225,7 @@ void RunTest_DelayTimer_Reset(MessageLoop::Type message_loop_type) { // If Delay is never called, the timer shouldn't go off. DelayTimerTarget target; - base::DelayTimer<DelayTimerTarget> timer( + base::DelayTimer<DelayTimerTarget> timer(FROM_HERE, TimeDelta::FromMilliseconds(50), &target, &DelayTimerTarget::Signal); timer.Reset(); @@ -233,8 +233,8 @@ void RunTest_DelayTimer_Reset(MessageLoop::Type message_loop_type) { base::OneShotTimer<ResetHelper> timers[20]; for (size_t i = 0; i < arraysize(timers); ++i) { - timers[i].Start(TimeDelta::FromMilliseconds(i * 10), &reset_helper, - &ResetHelper::Reset); + timers[i].Start(FROM_HERE, TimeDelta::FromMilliseconds(i * 10), + &reset_helper, &ResetHelper::Reset); } bool did_run = false; @@ -260,7 +260,7 @@ void RunTest_DelayTimer_Deleted(MessageLoop::Type message_loop_type) { { base::DelayTimer<DelayTimerFatalTarget> timer( - TimeDelta::FromMilliseconds(50), &target, + FROM_HERE, TimeDelta::FromMilliseconds(50), &target, &DelayTimerFatalTarget::Signal); timer.Reset(); } diff --git a/chrome/browser/autocomplete/autocomplete.cc b/chrome/browser/autocomplete/autocomplete.cc index 585fdd5..8d1a363 100644 --- a/chrome/browser/autocomplete/autocomplete.cc +++ b/chrome/browser/autocomplete/autocomplete.cc @@ -1018,6 +1018,7 @@ void AutocompleteController::CheckIfDone() { void AutocompleteController::StartExpireTimer() { if (result_.HasCopiedMatches()) - expire_timer_.Start(base::TimeDelta::FromMilliseconds(kExpireTimeMS), + expire_timer_.Start(FROM_HERE, + base::TimeDelta::FromMilliseconds(kExpireTimeMS), this, &AutocompleteController::ExpireCopiedEntries); } diff --git a/chrome/browser/autocomplete/search_provider.cc b/chrome/browser/autocomplete/search_provider.cc index 11a335b..c50b8c8 100644 --- a/chrome/browser/autocomplete/search_provider.cc +++ b/chrome/browser/autocomplete/search_provider.cc @@ -365,7 +365,8 @@ void SearchProvider::StartOrStopSuggestQuery(bool minimal_changes) { // Kick off a timer that will start the URL fetch if it completes before // the user types another character. int delay = query_suggest_immediately_ ? 0 : kQueryDelayMs; - timer_.Start(TimeDelta::FromMilliseconds(delay), this, &SearchProvider::Run); + timer_.Start(FROM_HERE, TimeDelta::FromMilliseconds(delay), this, + &SearchProvider::Run); } bool SearchProvider::IsQuerySuitableForSuggest() const { diff --git a/chrome/browser/bookmarks/bookmark_drop_info.cc b/chrome/browser/bookmarks/bookmark_drop_info.cc index 30d1f03..1b0b3e6 100644 --- a/chrome/browser/bookmarks/bookmark_drop_info.cc +++ b/chrome/browser/bookmarks/bookmark_drop_info.cc @@ -42,7 +42,7 @@ void BookmarkDropInfo::Update(const views::DropTargetEvent& event) { scroll_up_ = (last_y_ <= top_margin_ + views::kAutoscrollSize); if (scroll_up_ || scroll_down) { if (!scroll_timer_.IsRunning()) { - scroll_timer_.Start( + scroll_timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(views::kAutoscrollRowTimerMS), this, &BookmarkDropInfo::Scroll); diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_process_impl.cc index c46580a..ca60f3b 100644 --- a/chrome/browser/browser_process_impl.cc +++ b/chrome/browser/browser_process_impl.cc @@ -652,7 +652,7 @@ void BrowserProcessImpl::Observe(int type, #if (defined(OS_WIN) || defined(OS_LINUX)) && !defined(OS_CHROMEOS) void BrowserProcessImpl::StartAutoupdateTimer() { - autoupdate_timer_.Start( + autoupdate_timer_.Start(FROM_HERE, base::TimeDelta::FromHours(kUpdateCheckIntervalHours), this, &BrowserProcessImpl::OnAutoupdateTimer); diff --git a/chrome/browser/chromeos/cros/login_library.cc b/chrome/browser/chromeos/cros/login_library.cc index af42d4a..238b52b 100644 --- a/chrome/browser/chromeos/cros/login_library.cc +++ b/chrome/browser/chromeos/cros/login_library.cc @@ -89,7 +89,7 @@ class LoginLibraryImpl : public LoginLibrary { // just kills us so settings may be lost. See http://crosbug.com/13102 local_state_->CommitPendingWrite(); timer_.Start( - base::TimeDelta::FromSeconds(3), this, + FROM_HERE, base::TimeDelta::FromSeconds(3), this, &JobRestartRequest::RestartJob); // Post task on file thread thus it occurs last on task queue, so it // would be executed after committing pending write on file thread. diff --git a/chrome/browser/chromeos/cros/power_library.cc b/chrome/browser/chromeos/cros/power_library.cc index a8e62dc..721202b 100644 --- a/chrome/browser/chromeos/cros/power_library.cc +++ b/chrome/browser/chromeos/cros/power_library.cc @@ -172,6 +172,7 @@ class PowerLibraryStubImpl : public PowerLibrary { battery_percentage_(20), pause_count_(0) { timer_.Start( + FROM_HERE, base::TimeDelta::FromMilliseconds(100), this, &PowerLibraryStubImpl::Update); diff --git a/chrome/browser/chromeos/customization_document.cc b/chrome/browser/chromeos/customization_document.cc index 4f944e6..bd47d4a 100644 --- a/chrome/browser/chromeos/customization_document.cc +++ b/chrome/browser/chromeos/customization_document.cc @@ -346,7 +346,8 @@ void ServicesCustomizationDocument::OnURLFetchComplete( NetworkLibrary* network = CrosLibrary::Get()->GetNetworkLibrary(); if (!network->Connected() && num_retries_ < kMaxFetchRetries) { num_retries_++; - retry_timer_.Start(base::TimeDelta::FromSeconds(kRetriesDelayInSec), + retry_timer_.Start(FROM_HERE, + base::TimeDelta::FromSeconds(kRetriesDelayInSec), this, &ServicesCustomizationDocument::StartFileFetch); return; } diff --git a/chrome/browser/chromeos/login/network_screen.cc b/chrome/browser/chromeos/login/network_screen.cc index 7fabbb9..a860934e 100644 --- a/chrome/browser/chromeos/login/network_screen.cc +++ b/chrome/browser/chromeos/login/network_screen.cc @@ -170,7 +170,8 @@ void NetworkScreen::StopWaitingForConnection(const string16& network_id) { void NetworkScreen::WaitForConnection(const string16& network_id) { if (network_id_ != network_id || !connection_timer_.IsRunning()) { connection_timer_.Stop(); - connection_timer_.Start(base::TimeDelta::FromSeconds(kConnectionTimeoutSec), + connection_timer_.Start(FROM_HERE, + base::TimeDelta::FromSeconds(kConnectionTimeoutSec), this, &NetworkScreen::OnConnectionTimeout); } diff --git a/chrome/browser/chromeos/login/screen_locker.cc b/chrome/browser/chromeos/login/screen_locker.cc index fe1616b..b9d40f9 100644 --- a/chrome/browser/chromeos/login/screen_locker.cc +++ b/chrome/browser/chromeos/login/screen_locker.cc @@ -675,7 +675,8 @@ class LockerInputEventObserver : public MessageLoopForUI::Observer { explicit LockerInputEventObserver(ScreenLocker* screen_locker) : screen_locker_(screen_locker), ALLOW_THIS_IN_INITIALIZER_LIST( - timer_(base::TimeDelta::FromSeconds(kScreenSaverIdleTimeout), this, + timer_(FROM_HERE, + base::TimeDelta::FromSeconds(kScreenSaverIdleTimeout), this, &LockerInputEventObserver::StartScreenSaver)) { } diff --git a/chrome/browser/chromeos/login/update_screen.cc b/chrome/browser/chromeos/login/update_screen.cc index 8e70834..676c22e 100644 --- a/chrome/browser/chromeos/login/update_screen.cc +++ b/chrome/browser/chromeos/login/update_screen.cc @@ -156,7 +156,8 @@ void UpdateScreen::UpdateStatusChanged(UpdateLibrary* library) { actor_->ShowCurtain(false); VLOG(1) << "Initiate reboot after update"; CrosLibrary::Get()->GetUpdateLibrary()->RebootAfterUpdate(); - reboot_timer_.Start(base::TimeDelta::FromSeconds(reboot_check_delay_), + reboot_timer_.Start(FROM_HERE, + base::TimeDelta::FromSeconds(reboot_check_delay_), this, &UpdateScreen::OnWaitForRebootTimeElapsed); } else { diff --git a/chrome/browser/chromeos/login/web_page_screen.cc b/chrome/browser/chromeos/login/web_page_screen.cc index 694cad7..ae5d33f 100644 --- a/chrome/browser/chromeos/login/web_page_screen.cc +++ b/chrome/browser/chromeos/login/web_page_screen.cc @@ -50,7 +50,8 @@ void WebPageScreen::OnNetworkTimeout() { void WebPageScreen::StartTimeoutTimer() { StopTimeoutTimer(); - timeout_timer_.Start(TimeDelta::FromSeconds(kNetworkTimeoutSec), + timeout_timer_.Start(FROM_HERE, + TimeDelta::FromSeconds(kNetworkTimeoutSec), this, &WebPageScreen::OnNetworkTimeout); } diff --git a/chrome/browser/chromeos/login/web_page_view.cc b/chrome/browser/chromeos/login/web_page_view.cc index 7c4826d..4ce06c5 100644 --- a/chrome/browser/chromeos/login/web_page_view.cc +++ b/chrome/browser/chromeos/login/web_page_view.cc @@ -123,7 +123,8 @@ void WebPageView::Init() { connecting_label_->SetVisible(false); AddChildView(connecting_label_ ); - start_timer_.Start(TimeDelta::FromMilliseconds(kStartDelayMs), + start_timer_.Start(FROM_HERE, + TimeDelta::FromMilliseconds(kStartDelayMs), this, &WebPageView::ShowWaitingControls); } @@ -150,7 +151,8 @@ void WebPageView::ShowPageContent() { // TODO(nkostylev): Show throbber as an overlay until page has been rendered. start_timer_.Stop(); if (!stop_timer_.IsRunning()) { - stop_timer_.Start(TimeDelta::FromMilliseconds(kStopDelayMs), + stop_timer_.Start(FROM_HERE, + TimeDelta::FromMilliseconds(kStopDelayMs), this, &WebPageView::ShowRenderedPage); } diff --git a/chrome/browser/chromeos/login/wizard_controller.cc b/chrome/browser/chromeos/login/wizard_controller.cc index a2445314..5fc5e5e 100644 --- a/chrome/browser/chromeos/login/wizard_controller.cc +++ b/chrome/browser/chromeos/login/wizard_controller.cc @@ -502,6 +502,7 @@ void WizardController::SetCurrentScreenSmooth(WizardScreen* new_current, if (use_smoothing) { smooth_show_timer_.Start( + FROM_HERE, base::TimeDelta::FromMilliseconds(kShowDelayMs), this, &WizardController::ShowCurrentScreen); diff --git a/chrome/browser/chromeos/setting_level_bubble.cc b/chrome/browser/chromeos/setting_level_bubble.cc index 116c445..7a35a99 100644 --- a/chrome/browser/chromeos/setting_level_bubble.cc +++ b/chrome/browser/chromeos/setting_level_bubble.cc @@ -148,7 +148,8 @@ void SettingLevelBubble::ShowBubble(double percent, bool enabled) { view_->SetEnabled(enabled); } - hide_timer_.Start(base::TimeDelta::FromMilliseconds(kBubbleShowTimeoutMs), + hide_timer_.Start(FROM_HERE, + base::TimeDelta::FromMilliseconds(kBubbleShowTimeoutMs), this, &SettingLevelBubble::OnHideTimeout); } @@ -232,7 +233,8 @@ void SettingLevelBubble::UpdateTargetPercent(double percent) { target_time_ = now + TimeDelta::FromMilliseconds(duration_ms); if (!is_animating_) { - animation_timer_.Start(TimeDelta::FromMilliseconds(kAnimationIntervalMs), + animation_timer_.Start(FROM_HERE, + TimeDelta::FromMilliseconds(kAnimationIntervalMs), this, &SettingLevelBubble::OnAnimationTimeout); is_animating_ = true; diff --git a/chrome/browser/chromeos/status/clock_menu_button.cc b/chrome/browser/chromeos/status/clock_menu_button.cc index ac5b0b6..5df5502 100644 --- a/chrome/browser/chromeos/status/clock_menu_button.cc +++ b/chrome/browser/chromeos/status/clock_menu_button.cc @@ -80,7 +80,7 @@ void ClockMenuButton::UpdateTextAndSetNextTimer() { // called just a teeny bit early, then it will skip the next minute. seconds_left += kTimerSlopSeconds; - timer_.Start(base::TimeDelta::FromSeconds(seconds_left), this, + timer_.Start(FROM_HERE, base::TimeDelta::FromSeconds(seconds_left), this, &ClockMenuButton::UpdateTextAndSetNextTimer); } diff --git a/chrome/browser/chromeos/status/memory_menu_button.cc b/chrome/browser/chromeos/status/memory_menu_button.cc index fe4c33c..cda69ff 100644 --- a/chrome/browser/chromeos/status/memory_menu_button.cc +++ b/chrome/browser/chromeos/status/memory_menu_button.cc @@ -66,7 +66,8 @@ MemoryMenuButton::~MemoryMenuButton() { void MemoryMenuButton::UpdateTextAndSetNextTimer() { UpdateText(); - timer_.Start(base::TimeDelta::FromSeconds(kUpdateIntervalSeconds), this, + timer_.Start(FROM_HERE, + base::TimeDelta::FromSeconds(kUpdateIntervalSeconds), this, &MemoryMenuButton::UpdateTextAndSetNextTimer); } diff --git a/chrome/browser/chromeos/upgrade_detector_chromeos.cc b/chrome/browser/chromeos/upgrade_detector_chromeos.cc index 809ba4a..9445c04 100644 --- a/chrome/browser/chromeos/upgrade_detector_chromeos.cc +++ b/chrome/browser/chromeos/upgrade_detector_chromeos.cc @@ -37,7 +37,7 @@ void UpgradeDetectorChromeos::UpdateStatusChanged( // Setup timer to to move along the upgrade advisory system. upgrade_notification_timer_.Start( - base::TimeDelta::FromMilliseconds(kNotifyCycleTimeMs), + FROM_HERE, base::TimeDelta::FromMilliseconds(kNotifyCycleTimeMs), this, &UpgradeDetectorChromeos::NotifyOnUpgrade); } diff --git a/chrome/browser/component_updater/component_updater_service.cc b/chrome/browser/component_updater/component_updater_service.cc index 8b78857..d92516a 100644 --- a/chrome/browser/component_updater/component_updater_service.cc +++ b/chrome/browser/component_updater/component_updater_service.cc @@ -336,7 +336,7 @@ ComponentUpdateService::Status CrxUpdateService::Start() { Source<ComponentUpdateService>(this), NotificationService::NoDetails()); - timer_.Start(base::TimeDelta::FromSeconds(config_->InitialDelay()), + timer_.Start(FROM_HERE, base::TimeDelta::FromSeconds(config_->InitialDelay()), this, &CrxUpdateService::ProcessPendingItems); return kOk; } @@ -374,7 +374,7 @@ void CrxUpdateService::ScheduleNextRun(bool step_delay) { return; } - timer_.Start(base::TimeDelta::FromSeconds(delay), + timer_.Start(FROM_HERE, base::TimeDelta::FromSeconds(delay), this, &CrxUpdateService::ProcessPendingItems); } diff --git a/chrome/browser/enumerate_modules_model_win.cc b/chrome/browser/enumerate_modules_model_win.cc index e056cd4..694de06 100644 --- a/chrome/browser/enumerate_modules_model_win.cc +++ b/chrome/browser/enumerate_modules_model_win.cc @@ -904,7 +904,7 @@ EnumerateModulesModel::EnumerateModulesModel() suspected_bad_modules_detected_(0) { const CommandLine& cmd_line = *CommandLine::ForCurrentProcess(); if (cmd_line.HasSwitch(switches::kConflictingModulesCheck)) { - check_modules_timer_.Start( + check_modules_timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(kModuleCheckDelayMs), this, &EnumerateModulesModel::ScanNow); } diff --git a/chrome/browser/extensions/extension_updater.cc b/chrome/browser/extensions/extension_updater.cc index 2bd4e6b..bede960 100644 --- a/chrome/browser/extensions/extension_updater.cc +++ b/chrome/browser/extensions/extension_updater.cc @@ -942,7 +942,7 @@ void ExtensionUpdater::ScheduleNextCheck(const TimeDelta& target_delay) { prefs_->SetInt64(kNextExtensionsUpdateCheck, next.ToInternalValue()); prefs_->ScheduleSavePersistentPrefs(); - timer_.Start(actual_delay, this, &ExtensionUpdater::TimerFired); + timer_.Start(FROM_HERE, actual_delay, this, &ExtensionUpdater::TimerFired); } void ExtensionUpdater::TimerFired() { diff --git a/chrome/browser/extensions/extension_web_socket_proxy_private_api.cc b/chrome/browser/extensions/extension_web_socket_proxy_private_api.cc index 1eaf24c..9b38568 100644 --- a/chrome/browser/extensions/extension_web_socket_proxy_private_api.cc +++ b/chrome/browser/extensions/extension_web_socket_proxy_private_api.cc @@ -59,7 +59,7 @@ bool WebSocketProxyPrivateGetPassportForTCPFunction::RunImpl() { if (delay_response) { const int kTimeout = 3; - timer_.Start(base::TimeDelta::FromSeconds(kTimeout), + timer_.Start(FROM_HERE, base::TimeDelta::FromSeconds(kTimeout), this, &WebSocketProxyPrivateGetPassportForTCPFunction::Finalize); } else { Finalize(); diff --git a/chrome/browser/extensions/extensions_quota_service.cc b/chrome/browser/extensions/extensions_quota_service.cc index 0c41656..6c441b1 100644 --- a/chrome/browser/extensions/extensions_quota_service.cc +++ b/chrome/browser/extensions/extensions_quota_service.cc @@ -18,7 +18,8 @@ const char QuotaLimitHeuristic::kGenericOverQuotaError[] = ExtensionsQuotaService::ExtensionsQuotaService() { if (MessageLoop::current() != NULL) { // Null in unit tests. - purge_timer_.Start(base::TimeDelta::FromDays(kPurgeIntervalInDays), + purge_timer_.Start(FROM_HERE, + base::TimeDelta::FromDays(kPurgeIntervalInDays), this, &ExtensionsQuotaService::Purge); } } diff --git a/chrome/browser/history/top_sites.cc b/chrome/browser/history/top_sites.cc index d6bb0dc..25e333b 100644 --- a/chrome/browser/history/top_sites.cc +++ b/chrome/browser/history/top_sites.cc @@ -946,7 +946,7 @@ void TopSites::RestartQueryForTopSitesTimer(base::TimeDelta delta) { timer_start_time_ = base::TimeTicks::Now(); timer_.Stop(); - timer_.Start(delta, this, &TopSites::TimerFired); + timer_.Start(FROM_HERE, delta, this, &TopSites::TimerFired); } void TopSites::OnHistoryMigrationWrittenToDisk(TopSitesBackend::Handle handle) { diff --git a/chrome/browser/instant/instant_controller.cc b/chrome/browser/instant/instant_controller.cc index deac866..f24cf5e 100644 --- a/chrome/browser/instant/instant_controller.cc +++ b/chrome/browser/instant/instant_controller.cc @@ -520,7 +520,7 @@ void InstantController::InstantStatusChanged(InstantLoader* loader) { // Status isn't ok, start a timer that when fires shows the result. This // delays showing 403 pages and the like. show_timer_.Stop(); - show_timer_.Start( + show_timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(kShowDelayMS), this, &InstantController::ShowTimerFired); UpdateDisplayableLoader(); @@ -669,7 +669,8 @@ void InstantController::ScheduleUpdate(const GURL& url) { scheduled_url_ = url; update_timer_.Stop(); - update_timer_.Start(base::TimeDelta::FromMilliseconds(kUpdateDelayMS), + update_timer_.Start(FROM_HERE, + base::TimeDelta::FromMilliseconds(kUpdateDelayMS), this, &InstantController::ProcessScheduledUpdate); } @@ -724,7 +725,7 @@ void InstantController::UpdateLoader(const TemplateURL* template_url, user_text, verbatim, suggested_text)) { show_timer_.Stop(); if (!new_loader->http_status_ok()) { - show_timer_.Start( + show_timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(kShowDelayMS), this, &InstantController::ShowTimerFired); } diff --git a/chrome/browser/instant/instant_loader.cc b/chrome/browser/instant/instant_loader.cc index 8b28bc0..cb2d593 100644 --- a/chrome/browser/instant/instant_loader.cc +++ b/chrome/browser/instant/instant_loader.cc @@ -684,7 +684,7 @@ void InstantLoader::SetOmniboxBounds(const gfx::Rect& bounds) { if (omnibox_bounds_.height() > last_omnibox_bounds_.height()) { SendBoundsToPage(false); } else { - update_bounds_timer_.Start( + update_bounds_timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(kUpdateBoundsDelayMS), this, &InstantLoader::ProcessBoundsChange); } diff --git a/chrome/browser/internal_auth.cc b/chrome/browser/internal_auth.cc index ac8d91f..76e32b4 100644 --- a/chrome/browser/internal_auth.cc +++ b/chrome/browser/internal_auth.cc @@ -343,7 +343,7 @@ class InternalAuthGenerationService : public base::ThreadChecker { void GenerateNewKey() { DCHECK(CalledOnValidThread()); if (!timer_.IsRunning()) { - timer_.Start( + timer_.Start(FROM_HERE, base::TimeDelta::FromMicroseconds( kKeyRegenerationSoftTicks * kTickUs), this, diff --git a/chrome/browser/net/predictor_unittest.cc b/chrome/browser/net/predictor_unittest.cc index 70a39c9..23b4ca0 100644 --- a/chrome/browser/net/predictor_unittest.cc +++ b/chrome/browser/net/predictor_unittest.cc @@ -85,7 +85,7 @@ class PredictorTest : public testing::Test { void WaitForResolution(Predictor* predictor, const UrlList& hosts) { HelperTimer* timer = new HelperTimer(); - timer->Start(TimeDelta::FromMilliseconds(100), + timer->Start(FROM_HERE, TimeDelta::FromMilliseconds(100), new WaitForResolutionHelper(predictor, hosts, timer), &WaitForResolutionHelper::Run); MessageLoop::current()->Run(); diff --git a/chrome/browser/notifications/notification_ui_manager.cc b/chrome/browser/notifications/notification_ui_manager.cc index a2fdf24..f4ed3d8 100644 --- a/chrome/browser/notifications/notification_ui_manager.cc +++ b/chrome/browser/notifications/notification_ui_manager.cc @@ -164,7 +164,7 @@ void NotificationUIManager::CheckUserState() { ShowNotifications(); } else if (!user_state_check_timer_.IsRunning()) { // Start a timer to detect the moment at which the user becomes active. - user_state_check_timer_.Start( + user_state_check_timer_.Start(FROM_HERE, base::TimeDelta::FromSeconds(kUserStatePollingIntervalSeconds), this, &NotificationUIManager::CheckUserState); } diff --git a/chrome/browser/oom_priority_manager.cc b/chrome/browser/oom_priority_manager.cc index fcd7a91..d3db051 100644 --- a/chrome/browser/oom_priority_manager.cc +++ b/chrome/browser/oom_priority_manager.cc @@ -48,7 +48,8 @@ OomPriorityManager::~OomPriorityManager() { void OomPriorityManager::StartTimer() { if (!timer_.IsRunning()) { - timer_.Start(TimeDelta::FromSeconds(ADJUSTMENT_INTERVAL_SECONDS), + timer_.Start(FROM_HERE, + TimeDelta::FromSeconds(ADJUSTMENT_INTERVAL_SECONDS), this, &OomPriorityManager::AdjustOomPriorities); } diff --git a/chrome/browser/policy/delayed_work_scheduler.cc b/chrome/browser/policy/delayed_work_scheduler.cc index b751cb6..35fd049 100644 --- a/chrome/browser/policy/delayed_work_scheduler.cc +++ b/chrome/browser/policy/delayed_work_scheduler.cc @@ -30,7 +30,8 @@ void DelayedWorkScheduler::PostDelayedWork( const base::Closure& callback, int64 delay) { callback_ = callback; - timer_.Start(base::TimeDelta::FromMilliseconds(delay), + timer_.Start(FROM_HERE, + base::TimeDelta::FromMilliseconds(delay), this, &DelayedWorkScheduler::DoDelayedWork); } diff --git a/chrome/browser/prerender/prerender_manager.cc b/chrome/browser/prerender/prerender_manager.cc index b33d31f..6c53557 100644 --- a/chrome/browser/prerender/prerender_manager.cc +++ b/chrome/browser/prerender/prerender_manager.cc @@ -180,7 +180,7 @@ class PrerenderManager::MostVisitedSites : public NotificationObserver { if (profile && profile->GetTopSitesWithoutCreating()) { Init(); } else { - timer_.Start(base::TimeDelta::FromSeconds(3), this, + timer_.Start(FROM_HERE, base::TimeDelta::FromSeconds(3), this, &prerender::PrerenderManager::MostVisitedSites::Init); } } @@ -795,7 +795,7 @@ void PrerenderManager::StartSchedulingPeriodicCleanups() { DCHECK(CalledOnValidThread()); if (repeating_timer_.IsRunning()) return; - repeating_timer_.Start( + repeating_timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(kPeriodicCleanupIntervalMs), this, &PrerenderManager::PeriodicCleanup); diff --git a/chrome/browser/printing/print_job.cc b/chrome/browser/printing/print_job.cc index c1e61e3..0b180a2 100644 --- a/chrome/browser/printing/print_job.cc +++ b/chrome/browser/printing/print_job.cc @@ -183,7 +183,7 @@ bool PrintJob::FlushJob(int timeout_ms) { // wrong. base::OneShotTimer<MessageLoop> quit_task; if (timeout_ms) { - quit_task.Start(TimeDelta::FromMilliseconds(timeout_ms), + quit_task.Start(FROM_HERE, TimeDelta::FromMilliseconds(timeout_ms), MessageLoop::current(), &MessageLoop::Quit); } diff --git a/chrome/browser/printing/print_view_manager.cc b/chrome/browser/printing/print_view_manager.cc index 2fbd080..015b1f3 100644 --- a/chrome/browser/printing/print_view_manager.cc +++ b/chrome/browser/printing/print_view_manager.cc @@ -481,7 +481,8 @@ bool PrintViewManager::RunInnerMessageLoop() { // memory-bound. static const int kPrinterSettingsTimeout = 60000; base::OneShotTimer<MessageLoop> quit_timer; - quit_timer.Start(TimeDelta::FromMilliseconds(kPrinterSettingsTimeout), + quit_timer.Start(FROM_HERE, + TimeDelta::FromMilliseconds(kPrinterSettingsTimeout), MessageLoop::current(), &MessageLoop::Quit); inside_inner_message_loop_ = true; diff --git a/chrome/browser/process_singleton_linux.cc b/chrome/browser/process_singleton_linux.cc index 9055e59..f4808e6 100644 --- a/chrome/browser/process_singleton_linux.cc +++ b/chrome/browser/process_singleton_linux.cc @@ -470,7 +470,7 @@ class ProcessSingleton::LinuxWatcher // Wait for reads. MessageLoopForIO::current()->WatchFileDescriptor( fd, true, MessageLoopForIO::WATCH_READ, &fd_reader_, this); - timer_.Start(base::TimeDelta::FromSeconds(kTimeoutInSeconds), + timer_.Start(FROM_HERE, base::TimeDelta::FromSeconds(kTimeoutInSeconds), this, &SocketReader::OnTimerExpiry); } diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/profile_impl.cc index 1ddbd12..0b3acf5 100644 --- a/chrome/browser/profiles/profile_impl.cc +++ b/chrome/browser/profiles/profile_impl.cc @@ -310,7 +310,7 @@ ProfileImpl::ProfileImpl(const FilePath& path, DCHECK(!path.empty()) << "Using an empty path will attempt to write " << "profile files to the root directory!"; - create_session_service_timer_.Start( + create_session_service_timer_.Start(FROM_HERE, TimeDelta::FromMilliseconds(kCreateSessionServiceDelayMS), this, &ProfileImpl::EnsureSessionServiceCreated); diff --git a/chrome/browser/renderer_host/safe_browsing_resource_handler.cc b/chrome/browser/renderer_host/safe_browsing_resource_handler.cc index 043b6e0..97a2bb9 100644 --- a/chrome/browser/renderer_host/safe_browsing_resource_handler.cc +++ b/chrome/browser/renderer_host/safe_browsing_resource_handler.cc @@ -282,7 +282,8 @@ bool SafeBrowsingResourceHandler::CheckUrl(const GURL& url) { url_check_start_time_ = base::TimeTicks::Now(); // Start a timer to abort the check if it takes too long. - timer_.Start(base::TimeDelta::FromMilliseconds(kCheckUrlTimeoutMs), + timer_.Start(FROM_HERE, + base::TimeDelta::FromMilliseconds(kCheckUrlTimeoutMs), this, &SafeBrowsingResourceHandler::OnCheckUrlTimeout); return false; diff --git a/chrome/browser/safe_browsing/protocol_manager.cc b/chrome/browser/safe_browsing/protocol_manager.cc index 78c1bab..f412b04 100644 --- a/chrome/browser/safe_browsing/protocol_manager.cc +++ b/chrome/browser/safe_browsing/protocol_manager.cc @@ -502,8 +502,8 @@ void SafeBrowsingProtocolManager::ForceScheduleNextUpdate( DCHECK_GE(next_update_msec, 0); // Unschedule any current timer. update_timer_.Stop(); - update_timer_.Start(TimeDelta::FromMilliseconds(next_update_msec), this, - &SafeBrowsingProtocolManager::GetNextUpdate); + update_timer_.Start(FROM_HERE, TimeDelta::FromMilliseconds(next_update_msec), + this, &SafeBrowsingProtocolManager::GetNextUpdate); } // According to section 5 of the SafeBrowsing protocol specification, we must @@ -620,7 +620,8 @@ void SafeBrowsingProtocolManager::OnGetChunksComplete( request_->Start(); // Begin the update request timeout. - update_timer_.Start(TimeDelta::FromSeconds(kSbMaxUpdateWaitSec), this, + update_timer_.Start(FROM_HERE, TimeDelta::FromSeconds(kSbMaxUpdateWaitSec), + this, &SafeBrowsingProtocolManager::UpdateResponseTimeout); } diff --git a/chrome/browser/sessions/session_restore.cc b/chrome/browser/sessions/session_restore.cc index 2cbe188..ddf793d 100644 --- a/chrome/browser/sessions/session_restore.cc +++ b/chrome/browser/sessions/session_restore.cc @@ -222,7 +222,7 @@ void TabLoader::LoadNextTab() { force_load_timer_.Stop(); // Each time we load a tab we also set a timer to force us to start loading // the next tab if this one doesn't load quickly enough. - force_load_timer_.Start( + force_load_timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(force_load_delay_), this, &TabLoader::ForceLoadTimerFired); } diff --git a/chrome/browser/spellchecker/spellcheck_host_metrics.cc b/chrome/browser/spellchecker/spellcheck_host_metrics.cc index 87021cb..1ad9ba4 100644 --- a/chrome/browser/spellchecker/spellcheck_host_metrics.cc +++ b/chrome/browser/spellchecker/spellcheck_host_metrics.cc @@ -14,7 +14,7 @@ SpellCheckHostMetrics::SpellCheckHostMetrics() replaced_word_count_(0), start_time_(base::Time::Now()) { const uint64 kHistogramTimerDurationInMinutes = 30; - recording_timer_.Start( + recording_timer_.Start(FROM_HERE, base::TimeDelta::FromMinutes(kHistogramTimerDurationInMinutes), this, &SpellCheckHostMetrics::OnHistogramTimerExpired); RecordWordCounts(); diff --git a/chrome/browser/sync/engine/sync_scheduler.cc b/chrome/browser/sync/engine/sync_scheduler.cc index 3782aff..d7d68ab 100644 --- a/chrome/browser/sync/engine/sync_scheduler.cc +++ b/chrome/browser/sync/engine/sync_scheduler.cc @@ -901,13 +901,13 @@ void SyncScheduler::AdjustPolling(const SyncSessionJob* old_job) { // Adjust poll rate. poll_timer_.Stop(); - poll_timer_.Start(poll, this, &SyncScheduler::PollTimerCallback); + poll_timer_.Start(FROM_HERE, poll, this, &SyncScheduler::PollTimerCallback); } void SyncScheduler::RestartWaiting() { CHECK(wait_interval_.get()); wait_interval_->timer.Stop(); - wait_interval_->timer.Start(wait_interval_->length, + wait_interval_->timer.Start(FROM_HERE, wait_interval_->length, this, &SyncScheduler::DoCanaryJob); } @@ -1077,7 +1077,7 @@ void SyncScheduler::OnSilencedUntil(const base::TimeTicks& silenced_until) { DCHECK_EQ(MessageLoop::current(), sync_loop_); wait_interval_.reset(new WaitInterval(WaitInterval::THROTTLED, silenced_until - TimeTicks::Now())); - wait_interval_->timer.Start(wait_interval_->length, this, + wait_interval_->timer.Start(FROM_HERE, wait_interval_->length, this, &SyncScheduler::Unthrottle); } diff --git a/chrome/browser/sync/glue/database_model_worker_unittest.cc b/chrome/browser/sync/glue/database_model_worker_unittest.cc index 40fc978..150dd31 100644 --- a/chrome/browser/sync/glue/database_model_worker_unittest.cc +++ b/chrome/browser/sync/glue/database_model_worker_unittest.cc @@ -38,7 +38,7 @@ class DatabaseModelWorkerTest : public testing::Test { void ScheduleWork() { scoped_ptr<Callback0::Type> c(NewCallback(this, &DatabaseModelWorkerTest::DoWork)); - timer()->Start(TimeDelta::FromSeconds(10), + timer()->Start(FROM_HERE, TimeDelta::FromSeconds(10), this, &DatabaseModelWorkerTest::Timeout); worker()->DoWorkAndWaitUntilDone(c.get()); } diff --git a/chrome/browser/sync/glue/sync_backend_host.cc b/chrome/browser/sync/glue/sync_backend_host.cc index 486ca47..f8a1849 100644 --- a/chrome/browser/sync/glue/sync_backend_host.cc +++ b/chrome/browser/sync/glue/sync_backend_host.cc @@ -896,7 +896,7 @@ void SyncBackendHost::Core::HandleAuthErrorEventOnFrontendLoop( } void SyncBackendHost::Core::StartSavingChanges() { - save_changes_timer_.Start( + save_changes_timer_.Start(FROM_HERE, base::TimeDelta::FromSeconds(kSaveChangesIntervalSeconds), this, &Core::SaveChanges); } diff --git a/chrome/browser/sync/notifier/registration_manager.cc b/chrome/browser/sync/notifier/registration_manager.cc index 0308dbe..b505729 100644 --- a/chrome/browser/sync/notifier/registration_manager.cc +++ b/chrome/browser/sync/notifier/registration_manager.cc @@ -192,7 +192,7 @@ void RegistrationManager::TryRegisterType(syncable::ModelType model_type, << syncable::ModelTypeToString(model_type) << " in " << delay.InMilliseconds() << " ms"; status->registration_timer.Stop(); - status->registration_timer.Start( + status->registration_timer.Start(FROM_HERE, delay, status, &RegistrationManager::RegistrationStatus::DoRegister); double next_delay_seconds = CalculateBackoff(static_cast<double>(status->next_delay.InSeconds()), diff --git a/chrome/browser/sync/profile_sync_service.cc b/chrome/browser/sync/profile_sync_service.cc index 4d23502..80c6009 100644 --- a/chrome/browser/sync/profile_sync_service.cc +++ b/chrome/browser/sync/profile_sync_service.cc @@ -482,7 +482,7 @@ void ProfileSyncService::Shutdown(bool sync_disabled) { void ProfileSyncService::ClearServerData() { clear_server_data_state_ = CLEAR_CLEARING; - clear_server_data_timer_.Start( + clear_server_data_timer_.Start(FROM_HERE, base::TimeDelta::FromSeconds(kSyncClearDataTimeoutInSeconds), this, &ProfileSyncService::OnClearServerDataTimeout); backend_->RequestClearServerData(); diff --git a/chrome/browser/ui/fullscreen_exit_bubble.cc b/chrome/browser/ui/fullscreen_exit_bubble.cc index 8c42fa1..be3db4e 100644 --- a/chrome/browser/ui/fullscreen_exit_bubble.cc +++ b/chrome/browser/ui/fullscreen_exit_bubble.cc @@ -26,11 +26,12 @@ FullscreenExitBubble::~FullscreenExitBubble() { void FullscreenExitBubble::StartWatchingMouse() { // Start the initial delay timer and begin watching the mouse. - initial_delay_.Start(base::TimeDelta::FromMilliseconds(kInitialDelayMs), this, + initial_delay_.Start(FROM_HERE, + base::TimeDelta::FromMilliseconds(kInitialDelayMs), this, &FullscreenExitBubble::CheckMousePosition); gfx::Point cursor_pos = GetCursorScreenPoint(); last_mouse_pos_ = cursor_pos; - mouse_position_checker_.Start( + mouse_position_checker_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(1000 / kPositionCheckHz), this, &FullscreenExitBubble::CheckMousePosition); } @@ -62,7 +63,8 @@ void FullscreenExitBubble::CheckMousePosition() { if (cursor_pos != last_mouse_pos_) { // The mouse moved; reset the idle timer. idle_timeout_.Stop(); // If the timer isn't running, this is a no-op. - idle_timeout_.Start(base::TimeDelta::FromMilliseconds(kIdleTimeMs), this, + idle_timeout_.Start(FROM_HERE, + base::TimeDelta::FromMilliseconds(kIdleTimeMs), this, &FullscreenExitBubble::CheckMousePosition); } last_mouse_pos_ = cursor_pos; diff --git a/chrome/browser/ui/gtk/browser_window_gtk.cc b/chrome/browser/ui/gtk/browser_window_gtk.cc index 4c52e9f..94f6066 100644 --- a/chrome/browser/ui/gtk/browser_window_gtk.cc +++ b/chrome/browser/ui/gtk/browser_window_gtk.cc @@ -792,7 +792,7 @@ void BrowserWindowGtk::UpdateLoadingAnimations(bool should_animate) { if (should_animate) { if (!loading_animation_timer_.IsRunning()) { // Loads are happening, and the timer isn't running, so start it. - loading_animation_timer_.Start( + loading_animation_timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(kLoadingAnimationFrameTimeMs), this, &BrowserWindowGtk::LoadingAnimationCallback); } @@ -1419,8 +1419,8 @@ gboolean BrowserWindowGtk::OnConfigure(GtkWidget* widget, // (In that case Stop() is a no-op.) if (!debounce_timer_disabled_) { window_configure_debounce_timer_.Stop(); - window_configure_debounce_timer_.Start(base::TimeDelta::FromMilliseconds( - kDebounceTimeoutMilliseconds), this, + window_configure_debounce_timer_.Start(FROM_HERE, + base::TimeDelta::FromMilliseconds(kDebounceTimeoutMilliseconds), this, &BrowserWindowGtk::OnDebouncedBoundsChanged); } diff --git a/chrome/browser/ui/gtk/download/download_item_gtk.cc b/chrome/browser/ui/gtk/download/download_item_gtk.cc index 5766738..5f9218e 100644 --- a/chrome/browser/ui/gtk/download/download_item_gtk.cc +++ b/chrome/browser/ui/gtk/download/download_item_gtk.cc @@ -424,7 +424,7 @@ void DownloadItemGtk::UpdateDownloadProgress() { void DownloadItemGtk::StartDownloadProgress() { if (progress_timer_.IsRunning()) return; - progress_timer_.Start( + progress_timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(download_util::kProgressRateMs), this, &DownloadItemGtk::UpdateDownloadProgress); } diff --git a/chrome/browser/ui/gtk/reload_button_gtk.cc b/chrome/browser/ui/gtk/reload_button_gtk.cc index d6e2501..b945934 100644 --- a/chrome/browser/ui/gtk/reload_button_gtk.cc +++ b/chrome/browser/ui/gtk/reload_button_gtk.cc @@ -119,7 +119,7 @@ void ReloadButtonGtk::ChangeMode(Mode mode, bool force) { // Go ahead and change to reload after a bit, which allows repeated reloads // without moving the mouse. if (!stop_to_reload_timer_.IsRunning()) { - stop_to_reload_timer_.Start(stop_to_reload_timer_delay_, this, + stop_to_reload_timer_.Start(FROM_HERE, stop_to_reload_timer_delay_, this, &ReloadButtonGtk::OnStopToReloadTimer); } } @@ -185,7 +185,7 @@ void ReloadButtonGtk::OnClicked(GtkWidget* /* sender */) { // here as the browser will do that when it actually starts loading (which // may happen synchronously, thus the need to do this before telling the // browser to execute the reload command). - double_click_timer_.Start(double_click_timer_delay_, this, + double_click_timer_.Start(FROM_HERE, double_click_timer_delay_, this, &ReloadButtonGtk::OnDoubleClickTimer); if (browser_) diff --git a/chrome/browser/ui/gtk/status_bubble_gtk.cc b/chrome/browser/ui/gtk/status_bubble_gtk.cc index df31d84..6640a8b 100644 --- a/chrome/browser/ui/gtk/status_bubble_gtk.cc +++ b/chrome/browser/ui/gtk/status_bubble_gtk.cc @@ -99,7 +99,8 @@ void StatusBubbleGtk::SetStatusTextToURL() { int desired_width = parent->allocation.width; if (!expanded()) { expand_timer_.Stop(); - expand_timer_.Start(base::TimeDelta::FromMilliseconds(kExpandHoverDelay), + expand_timer_.Start(FROM_HERE, + base::TimeDelta::FromMilliseconds(kExpandHoverDelay), this, &StatusBubbleGtk::ExpandURL); // When not expanded, we limit the size to one third the browser's // width. @@ -133,7 +134,7 @@ void StatusBubbleGtk::Hide() { void StatusBubbleGtk::SetStatusTextTo(const std::string& status_utf8) { if (status_utf8.empty()) { hide_timer_.Stop(); - hide_timer_.Start(base::TimeDelta::FromMilliseconds(kHideDelay), + hide_timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(kHideDelay), this, &StatusBubbleGtk::Hide); } else { gtk_label_set_text(GTK_LABEL(label_.get()), status_utf8.c_str()); diff --git a/chrome/browser/ui/gtk/tabs/dragged_tab_controller_gtk.cc b/chrome/browser/ui/gtk/tabs/dragged_tab_controller_gtk.cc index 73dd699..ac08691 100644 --- a/chrome/browser/ui/gtk/tabs/dragged_tab_controller_gtk.cc +++ b/chrome/browser/ui/gtk/tabs/dragged_tab_controller_gtk.cc @@ -245,7 +245,7 @@ void DraggedTabControllerGtk::ContinueDragging() { } if (!target_tabstrip) { - bring_to_front_timer_.Start( + bring_to_front_timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(kBringToFrontDelay), this, &DraggedTabControllerGtk::BringWindowUnderMouseToFront); } diff --git a/chrome/browser/ui/panels/auto_hiding_desktop_bar_win.cc b/chrome/browser/ui/panels/auto_hiding_desktop_bar_win.cc index 944c6b1..b10aadd 100644 --- a/chrome/browser/ui/panels/auto_hiding_desktop_bar_win.cc +++ b/chrome/browser/ui/panels/auto_hiding_desktop_bar_win.cc @@ -43,7 +43,7 @@ void AutoHidingDesktopBarWin::UpdateWorkArea(const gfx::Rect& work_area) { // called due to the work area change. if (taskbar_exists) { if (!polling_timer_.IsRunning()) { - polling_timer_.Start( + polling_timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(kCheckTaskbarPollingIntervalMs), this, &AutoHidingDesktopBarWin::OnPollingTimer); diff --git a/chrome/browser/ui/views/compact_nav/compact_location_bar_view_host.cc b/chrome/browser/ui/views/compact_nav/compact_location_bar_view_host.cc index 88e8194..216473d 100644 --- a/chrome/browser/ui/views/compact_nav/compact_location_bar_view_host.cc +++ b/chrome/browser/ui/views/compact_nav/compact_location_bar_view_host.cc @@ -478,7 +478,8 @@ void CompactLocationBarViewHost::StartAutoHideTimer() { // Restart the timer. auto_hide_timer_->Reset(); } else { - auto_hide_timer_->Start(base::TimeDelta::FromSeconds(kHideTimeoutInSeconds), + auto_hide_timer_->Start(FROM_HERE, + base::TimeDelta::FromSeconds(kHideTimeoutInSeconds), this, &CompactLocationBarViewHost::HideCallback); } } diff --git a/chrome/browser/ui/views/download/download_item_view.cc b/chrome/browser/ui/views/download/download_item_view.cc index 836504a..58c42d3 100644 --- a/chrome/browser/ui/views/download/download_item_view.cc +++ b/chrome/browser/ui/views/download/download_item_view.cc @@ -315,7 +315,7 @@ void DownloadItemView::UpdateDownloadProgress() { void DownloadItemView::StartDownloadProgress() { if (progress_timer_.IsRunning()) return; - progress_timer_.Start( + progress_timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(download_util::kProgressRateMs), this, &DownloadItemView::UpdateDownloadProgress); } diff --git a/chrome/browser/ui/views/frame/browser_view.cc b/chrome/browser/ui/views/frame/browser_view.cc index 4020129..7f586b6 100644 --- a/chrome/browser/ui/views/frame/browser_view.cc +++ b/chrome/browser/ui/views/frame/browser_view.cc @@ -759,7 +759,7 @@ void BrowserView::UpdateLoadingAnimations(bool should_animate) { if (!loading_animation_timer_.IsRunning()) { // Loads are happening, and the timer isn't running, so start it. last_animation_time_ = base::TimeTicks::Now(); - loading_animation_timer_.Start( + loading_animation_timer_.Start(FROM_HERE, TimeDelta::FromMilliseconds(kLoadingAnimationFrameTimeMs), this, &BrowserView::LoadingAnimationCallback); } diff --git a/chrome/browser/ui/views/reload_button.cc b/chrome/browser/ui/views/reload_button.cc index 0670d63..db95490 100644 --- a/chrome/browser/ui/views/reload_button.cc +++ b/chrome/browser/ui/views/reload_button.cc @@ -60,7 +60,7 @@ void ReloadButton::ChangeMode(Mode mode, bool force) { // Go ahead and change to reload after a bit, which allows repeated reloads // without moving the mouse. if (!stop_to_reload_timer_.IsRunning()) { - stop_to_reload_timer_.Start(stop_to_reload_timer_delay_, this, + stop_to_reload_timer_.Start(FROM_HERE, stop_to_reload_timer_delay_, this, &ReloadButton::OnStopToReloadTimer); } } @@ -106,7 +106,7 @@ void ReloadButton::ButtonPressed(views::Button* /* button */, // here as the browser will do that when it actually starts loading (which // may happen synchronously, thus the need to do this before telling the // browser to execute the reload command). - double_click_timer_.Start(double_click_timer_delay_, this, + double_click_timer_.Start(FROM_HERE, double_click_timer_delay_, this, &ReloadButton::OnDoubleClickTimer); if (browser_) diff --git a/chrome/browser/ui/views/tab_contents/tab_contents_view_views.cc b/chrome/browser/ui/views/tab_contents/tab_contents_view_views.cc index 0c2f2f3..ab91362 100644 --- a/chrome/browser/ui/views/tab_contents/tab_contents_view_views.cc +++ b/chrome/browser/ui/views/tab_contents/tab_contents_view_views.cc @@ -385,8 +385,8 @@ void TabContentsViewViews::OnNativeTabContentsViewMouseMove(bool motion) { void TabContentsViewViews::OnNativeTabContentsViewDraggingEnded() { if (close_tab_after_drag_ends_) { - close_tab_timer_.Start(base::TimeDelta::FromMilliseconds(0), this, - &TabContentsViewViews::CloseTab); + close_tab_timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(0), + this, &TabContentsViewViews::CloseTab); } tab_contents_->SystemDragEnded(); } diff --git a/chrome/browser/ui/views/tabs/dragged_tab_controller.cc b/chrome/browser/ui/views/tabs/dragged_tab_controller.cc index 685e0d5..eab3310 100644 --- a/chrome/browser/ui/views/tabs/dragged_tab_controller.cc +++ b/chrome/browser/ui/views/tabs/dragged_tab_controller.cc @@ -667,7 +667,7 @@ void DraggedTabController::ContinueDragging() { Attach(target_tabstrip, screen_point); } if (!target_tabstrip) { - bring_to_front_timer_.Start( + bring_to_front_timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(kBringToFrontDelay), this, &DraggedTabController::BringWindowUnderMouseToFront); } diff --git a/chrome/browser/ui/webui/chromeos/mobile_setup_ui.cc b/chrome/browser/ui/webui/chromeos/mobile_setup_ui.cc index ef94964..2f088a1 100644 --- a/chrome/browser/ui/webui/chromeos/mobile_setup_ui.cc +++ b/chrome/browser/ui/webui/chromeos/mobile_setup_ui.cc @@ -1127,6 +1127,7 @@ void MobileSetupHandler::ChangeState(chromeos::CellularNetwork* network, // limbo by the network library. if (!reconnect_timer_.IsRunning()) { reconnect_timer_.Start( + FROM_HERE, base::TimeDelta::FromMilliseconds(kReconnectTimerDelayMS), this, &MobileSetupHandler::ReconnectTimerFired); } diff --git a/chrome/browser/ui/webui/flash_ui.cc b/chrome/browser/ui/webui/flash_ui.cc index a973bfa..f69bc77 100644 --- a/chrome/browser/ui/webui/flash_ui.cc +++ b/chrome/browser/ui/webui/flash_ui.cc @@ -133,7 +133,7 @@ FlashDOMHandler::FlashDOMHandler() // And lastly, we fire off a timer to make sure we never get stuck at the // "Loading..." message. - timeout_.Start(base::TimeDelta::FromMilliseconds(kTimeout), + timeout_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(kTimeout), this, &FlashDOMHandler::OnTimeout); } diff --git a/chrome/browser/ui/webui/ntp/new_tab_ui.cc b/chrome/browser/ui/webui/ntp/new_tab_ui.cc index b0ce383..2ad0c41 100644 --- a/chrome/browser/ui/webui/ntp/new_tab_ui.cc +++ b/chrome/browser/ui/webui/ntp/new_tab_ui.cc @@ -278,7 +278,7 @@ void NewTabUI::PaintTimeout() { // Not enough quiet time has elapsed. // Some more paints must've occurred since we set the timeout. // Wait some more. - timer_.Start(base::TimeDelta::FromMilliseconds(kTimeoutMs), this, + timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(kTimeoutMs), this, &NewTabUI::PaintTimeout); } } @@ -288,7 +288,7 @@ void NewTabUI::StartTimingPaint(RenderViewHost* render_view_host) { last_paint_ = start_; registrar_.Add(this, content::NOTIFICATION_RENDER_WIDGET_HOST_DID_PAINT, Source<RenderWidgetHost>(render_view_host)); - timer_.Start(base::TimeDelta::FromMilliseconds(kTimeoutMs), this, + timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(kTimeoutMs), this, &NewTabUI::PaintTimeout); } diff --git a/chrome/browser/upgrade_detector_impl.cc b/chrome/browser/upgrade_detector_impl.cc index d6fa033..34b58c1 100644 --- a/chrome/browser/upgrade_detector_impl.cc +++ b/chrome/browser/upgrade_detector_impl.cc @@ -159,7 +159,7 @@ UpgradeDetectorImpl::UpgradeDetectorImpl() if (keystone_glue::KeystoneEnabled()) #endif { - detect_upgrade_timer_.Start( + detect_upgrade_timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(GetCheckForUpgradeEveryMs()), this, &UpgradeDetectorImpl::CheckForUpgrade); } @@ -195,7 +195,7 @@ void UpgradeDetectorImpl::UpgradeDetected() { // and stop the timer. int cycle_time = CmdLineInterval().empty() ? kNotifyCycleTimeMs : kNotifyCycleTimeForTestingMs; - upgrade_notification_timer_.Start( + upgrade_notification_timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(cycle_time), this, &UpgradeDetectorImpl::NotifyOnUpgrade); } diff --git a/chrome/browser/visitedlink/visitedlink_event_listener.cc b/chrome/browser/visitedlink/visitedlink_event_listener.cc index 478faac..0741bc8 100644 --- a/chrome/browser/visitedlink/visitedlink_event_listener.cc +++ b/chrome/browser/visitedlink/visitedlink_event_listener.cc @@ -134,7 +134,7 @@ void VisitedLinkEventListener::Add(VisitedLinkMaster::Fingerprint fingerprint) { pending_visited_links_.push_back(fingerprint); if (!coalesce_timer_.IsRunning()) { - coalesce_timer_.Start( + coalesce_timer_.Start(FROM_HERE, TimeDelta::FromMilliseconds(kCommitIntervalMs), this, &VisitedLinkEventListener::CommitVisitedLinks); } diff --git a/chrome/common/important_file_writer.cc b/chrome/common/important_file_writer.cc index 73381d1..b7583d6 100644 --- a/chrome/common/important_file_writer.cc +++ b/chrome/common/important_file_writer.cc @@ -146,7 +146,7 @@ void ImportantFileWriter::ScheduleWrite(DataSerializer* serializer) { } if (!timer_.IsRunning()) { - timer_.Start(commit_interval_, this, + timer_.Start(FROM_HERE, commit_interval_, this, &ImportantFileWriter::DoScheduledWrite); } } diff --git a/chrome/renderer/extensions/extension_dispatcher.cc b/chrome/renderer/extensions/extension_dispatcher.cc index a21cabf..d2f06ef 100644 --- a/chrome/renderer/extensions/extension_dispatcher.cc +++ b/chrome/renderer/extensions/extension_dispatcher.cc @@ -79,7 +79,7 @@ void ExtensionDispatcher::WebKitInitialized() { // For extensions, we want to ensure we call the IdleHandler every so often, // even if the extension keeps up activity. if (is_extension_process_) { - forced_idle_timer_.Start( + forced_idle_timer_.Start(FROM_HERE, base::TimeDelta::FromSeconds(kMaxExtensionIdleHandlerDelayS), RenderThread::current(), &RenderThread::IdleHandler); } @@ -118,7 +118,7 @@ void ExtensionDispatcher::IdleNotification() { RenderThread::current()->idle_notification_delay_in_s()), kMaxExtensionIdleHandlerDelayS); forced_idle_timer_.Stop(); - forced_idle_timer_.Start( + forced_idle_timer_.Start(FROM_HERE, base::TimeDelta::FromSeconds(forced_delay_s), RenderThread::current(), &RenderThread::IdleHandler); } diff --git a/content/browser/download/download_file_manager.cc b/content/browser/download/download_file_manager.cc index f21c67b1..0df8a3f 100644 --- a/content/browser/download/download_file_manager.cc +++ b/content/browser/download/download_file_manager.cc @@ -88,7 +88,8 @@ DownloadFile* DownloadFileManager::GetDownloadFile(int id) { void DownloadFileManager::StartUpdateTimer() { DCHECK(BrowserThread::CurrentlyOn(BrowserThread::FILE)); if (!update_timer_.IsRunning()) { - update_timer_.Start(base::TimeDelta::FromMilliseconds(kUpdatePeriodMs), + update_timer_.Start(FROM_HERE, + base::TimeDelta::FromMilliseconds(kUpdatePeriodMs), this, &DownloadFileManager::UpdateInProgressDownloads); } } diff --git a/content/browser/download/download_item.cc b/content/browser/download/download_item.cc index eefb8dd..fa6c436 100644 --- a/content/browser/download/download_item.cc +++ b/content/browser/download/download_item.cc @@ -325,7 +325,8 @@ void DownloadItem::StartProgressTimer() { // TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved. CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); - update_timer_.Start(base::TimeDelta::FromMilliseconds(kUpdateTimeMs), this, + update_timer_.Start(FROM_HERE, + base::TimeDelta::FromMilliseconds(kUpdateTimeMs), this, &DownloadItem::UpdateObservers); } diff --git a/content/browser/download/download_resource_handler.cc b/content/browser/download/download_resource_handler.cc index 5846c63..003a34e 100644 --- a/content/browser/download/download_resource_handler.cc +++ b/content/browser/download/download_resource_handler.cc @@ -238,7 +238,8 @@ DownloadResourceHandler::~DownloadResourceHandler() { void DownloadResourceHandler::StartPauseTimer() { if (!pause_timer_.IsRunning()) - pause_timer_.Start(base::TimeDelta::FromMilliseconds(kThrottleTimeMs), this, + pause_timer_.Start(FROM_HERE, + base::TimeDelta::FromMilliseconds(kThrottleTimeMs), this, &DownloadResourceHandler::CheckWriteProgress); } diff --git a/content/browser/net/url_request_slow_http_job.cc b/content/browser/net/url_request_slow_http_job.cc index 398298f..3f1a6b6 100644 --- a/content/browser/net/url_request_slow_http_job.cc +++ b/content/browser/net/url_request_slow_http_job.cc @@ -50,7 +50,7 @@ URLRequestSlowHTTPJob::URLRequestSlowHTTPJob(net::URLRequest* request, : URLRequestMockHTTPJob(request, file_path) { } void URLRequestSlowHTTPJob::Start() { - delay_timer_.Start(TimeDelta::FromMilliseconds(kDelayMs), this, + delay_timer_.Start(FROM_HERE, TimeDelta::FromMilliseconds(kDelayMs), this, &URLRequestSlowHTTPJob::RealStart); } diff --git a/content/browser/renderer_host/browser_render_process_host.cc b/content/browser/renderer_host/browser_render_process_host.cc index 51f7b5c..29b3e86 100644 --- a/content/browser/renderer_host/browser_render_process_host.cc +++ b/content/browser/renderer_host/browser_render_process_host.cc @@ -185,7 +185,7 @@ BrowserRenderProcessHost::BrowserRenderProcessHost( visible_widgets_(0), backgrounded_(true), ALLOW_THIS_IN_INITIALIZER_LIST(cached_dibs_cleaner_( - base::TimeDelta::FromSeconds(5), + FROM_HERE, base::TimeDelta::FromSeconds(5), this, &BrowserRenderProcessHost::ClearTransportDIBCache)), accessibility_enabled_(false), is_initialized_(false) { diff --git a/content/browser/renderer_host/render_widget_host.cc b/content/browser/renderer_host/render_widget_host.cc index 2a506d0..e370fe4 100644 --- a/content/browser/renderer_host/render_widget_host.cc +++ b/content/browser/renderer_host/render_widget_host.cc @@ -482,7 +482,7 @@ void RenderWidgetHost::StartHangMonitorTimeout(TimeDelta delay) { // fire sooner. time_when_considered_hung_ = Time::Now() + delay; hung_renderer_timer_.Stop(); - hung_renderer_timer_.Start(delay, this, + hung_renderer_timer_.Start(FROM_HERE, delay, this, &RenderWidgetHost::CheckRendererIsUnresponsive); } diff --git a/content/browser/renderer_host/resource_dispatcher_host.cc b/content/browser/renderer_host/resource_dispatcher_host.cc index cccc121..d845c8f 100644 --- a/content/browser/renderer_host/resource_dispatcher_host.cc +++ b/content/browser/renderer_host/resource_dispatcher_host.cc @@ -1575,7 +1575,7 @@ void ResourceDispatcherHost::InsertIntoResourceQueue( // Make sure we have the load state monitor running if (!update_load_states_timer_.IsRunning()) { - update_load_states_timer_.Start( + update_load_states_timer_.Start(FROM_HERE, TimeDelta::FromMilliseconds(kUpdateLoadStatesIntervalMsec), this, &ResourceDispatcherHost::UpdateLoadStates); } diff --git a/content/renderer/render_process_impl.cc b/content/renderer/render_process_impl.cc index cc900cd..c5df75c 100644 --- a/content/renderer/render_process_impl.cc +++ b/content/renderer/render_process_impl.cc @@ -37,7 +37,7 @@ RenderProcessImpl::RenderProcessImpl() : ALLOW_THIS_IN_INITIALIZER_LIST(shared_mem_cache_cleaner_( - base::TimeDelta::FromSeconds(5), + FROM_HERE, base::TimeDelta::FromSeconds(5), this, &RenderProcessImpl::ClearTransportDIBCache)), transport_dib_next_sequence_number_(0) { in_process_plugins_ = InProcessPlugins(); diff --git a/content/renderer/render_thread.cc b/content/renderer/render_thread.cc index bda81425..dcd0846 100644 --- a/content/renderer/render_thread.cc +++ b/content/renderer/render_thread.cc @@ -688,7 +688,7 @@ void RenderThread::IdleHandler() { void RenderThread::ScheduleIdleHandler(double initial_delay_s) { idle_notification_delay_in_s_ = initial_delay_s; idle_timer_.Stop(); - idle_timer_.Start( + idle_timer_.Start(FROM_HERE, base::TimeDelta::FromSeconds(static_cast<int64>(initial_delay_s)), this, &RenderThread::IdleHandler); } diff --git a/content/renderer/render_view.cc b/content/renderer/render_view.cc index 9ea7d42..4e04a09 100644 --- a/content/renderer/render_view.cc +++ b/content/renderer/render_view.cc @@ -1788,8 +1788,8 @@ void RenderView::StartNavStateSyncTimerIfNecessary() { nav_state_sync_timer_.Stop(); } - nav_state_sync_timer_.Start( - TimeDelta::FromSeconds(delay), this, &RenderView::SyncNavigationState); + nav_state_sync_timer_.Start(FROM_HERE, TimeDelta::FromSeconds(delay), this, + &RenderView::SyncNavigationState); } void RenderView::setMouseOverURL(const WebURL& url) { @@ -2842,7 +2842,8 @@ void RenderView::didUpdateLayout(WebFrame* frame) { if (check_preferred_size_timer_.IsRunning()) return; - check_preferred_size_timer_.Start(TimeDelta::FromMilliseconds(0), this, + check_preferred_size_timer_.Start(FROM_HERE, + TimeDelta::FromMilliseconds(0), this, &RenderView::CheckPreferredSize); } diff --git a/jingle/glue/pseudotcp_adapter.cc b/jingle/glue/pseudotcp_adapter.cc index a34ddd5..e2b3130 100644 --- a/jingle/glue/pseudotcp_adapter.cc +++ b/jingle/glue/pseudotcp_adapter.cc @@ -369,7 +369,8 @@ void PseudoTcpAdapter::Core::AdjustClock() { long timeout = 0; if (pseudo_tcp_.GetNextClock(PseudoTcp::Now(), timeout)) { timer_.Stop(); - timer_.Start(base::TimeDelta::FromMilliseconds(std::max(timeout, 0L)), this, + timer_.Start(FROM_HERE, + base::TimeDelta::FromMilliseconds(std::max(timeout, 0L)), this, &PseudoTcpAdapter::Core::HandleTcpClock); } } diff --git a/jingle/notifier/communicator/login.cc b/jingle/notifier/communicator/login.cc index 42fa0fc..70d3700 100644 --- a/jingle/notifier/communicator/login.cc +++ b/jingle/notifier/communicator/login.cc @@ -117,7 +117,7 @@ void Login::TryReconnect() { VLOG(1) << "Reconnecting in " << reconnect_interval_.InSeconds() << " seconds"; reconnect_timer_.Start( - reconnect_interval_, this, &Login::DoReconnect); + FROM_HERE, reconnect_interval_, this, &Login::DoReconnect); delegate_->OnDisconnect(); } diff --git a/media/audio/audio_input_controller.cc b/media/audio/audio_input_controller.cc index da957e6..cedbb24 100644 --- a/media/audio/audio_input_controller.cc +++ b/media/audio/audio_input_controller.cc @@ -21,7 +21,7 @@ AudioInputController::AudioInputController(EventHandler* handler, SyncWriter* sync_writer) : handler_(handler), stream_(NULL), - ALLOW_THIS_IN_INITIALIZER_LIST(no_data_timer_( + ALLOW_THIS_IN_INITIALIZER_LIST(no_data_timer_(FROM_HERE, base::TimeDelta::FromSeconds(kTimerResetInterval), this, &AudioInputController::DoReportNoDataError)), diff --git a/media/audio/audio_output_dispatcher.cc b/media/audio/audio_output_dispatcher.cc index c707069..ac08bcb 100644 --- a/media/audio/audio_output_dispatcher.cc +++ b/media/audio/audio_output_dispatcher.cc @@ -18,7 +18,7 @@ AudioOutputDispatcher::AudioOutputDispatcher( pause_delay_milliseconds_(2 * params.samples_per_packet * base::Time::kMillisecondsPerSecond / params.sample_rate), paused_proxies_(0), - ALLOW_THIS_IN_INITIALIZER_LIST(close_timer_( + ALLOW_THIS_IN_INITIALIZER_LIST(close_timer_(FROM_HERE, base::TimeDelta::FromMilliseconds(close_delay_ms), this, &AudioOutputDispatcher::ClosePendingStreams)) { } diff --git a/media/filters/adaptive_demuxer.cc b/media/filters/adaptive_demuxer.cc index f08e32d..5902900 100644 --- a/media/filters/adaptive_demuxer.cc +++ b/media/filters/adaptive_demuxer.cc @@ -98,7 +98,8 @@ void StreamSwitchManager::Play() { playing_ = true; if (video_ids_.size() > 1) { - timer_.Start(base::TimeDelta::FromMilliseconds(kSwitchTimerPeriod), + timer_.Start(FROM_HERE, + base::TimeDelta::FromMilliseconds(kSwitchTimerPeriod), this, &StreamSwitchManager::OnSwitchTimer); } } diff --git a/net/base/network_change_notifier_win.cc b/net/base/network_change_notifier_win.cc index 0d1f23c..91d6ffb 100644 --- a/net/base/network_change_notifier_win.cc +++ b/net/base/network_change_notifier_win.cc @@ -153,7 +153,7 @@ void NetworkChangeNotifierWin::OnObjectSignaled(HANDLE object) { // The one second delay chosen here was determined experimentally // by adamk on Windows 7. timer_.Stop(); // cancel any already waiting notification - timer_.Start(base::TimeDelta::FromSeconds(1), this, + timer_.Start(FROM_HERE, base::TimeDelta::FromSeconds(1), this, &NetworkChangeNotifierWin::NotifyParentOfOnlineStateChange); // Start watching for the next address change. diff --git a/net/curvecp/messenger.cc b/net/curvecp/messenger.cc index 703bc2e..ad6ed31 100644 --- a/net/curvecp/messenger.cc +++ b/net/curvecp/messenger.cc @@ -94,7 +94,8 @@ int Messenger::Write(IOBuffer* buf, int buf_len, CompletionCallback* callback) { int len = send_buffer_.write(buf->data(), buf_len); if (!send_timer_.IsRunning()) - send_timer_.Start(base::TimeDelta(), this, &Messenger::OnSendTimer); + send_timer_.Start(FROM_HERE, base::TimeDelta(), + this, &Messenger::OnSendTimer); if (len) return len; @@ -183,7 +184,7 @@ void Messenger::OnSendMessageComplete(int result) { LOG(ERROR) << "RttTimeout is " << rtt_.rtt_timeout(); base::TimeDelta delay = base::TimeDelta::FromMicroseconds(rtt_.rtt_timeout()); - send_timeout_timer_.Start(delay, this, &Messenger::OnTimeout); + send_timeout_timer_.Start(FROM_HERE, delay, this, &Messenger::OnTimeout); } } @@ -214,9 +215,9 @@ void Messenger::OnSendTimer() { // Set the next send timer. LOG(ERROR) << "SendRate is: " << rtt_.send_rate() << "us"; - send_timer_.Start(base::TimeDelta::FromMicroseconds(rtt_.send_rate()), - this, - &Messenger::OnSendTimer); + send_timer_.Start(FROM_HERE, + base::TimeDelta::FromMicroseconds(rtt_.send_rate()), + this, &Messenger::OnSendTimer); // Create a block from the send_buffer. if (!sent_list_.is_full()) { diff --git a/net/disk_cache/backend_impl.cc b/net/disk_cache/backend_impl.cc index ed69dcd..3b2a4ca 100644 --- a/net/disk_cache/backend_impl.cc +++ b/net/disk_cache/backend_impl.cc @@ -472,7 +472,7 @@ int BackendImpl::SyncInit() { trace_object_ = TraceObject::GetTraceObject(); // Create a recurrent timer of 30 secs. int timer_delay = unit_test_ ? 1000 : 30000; - timer_.Start(TimeDelta::FromMilliseconds(timer_delay), this, + timer_.Start(FROM_HERE, TimeDelta::FromMilliseconds(timer_delay), this, &BackendImpl::OnStatsTimer); } diff --git a/net/disk_cache/disk_cache_test_util.cc b/net/disk_cache/disk_cache_test_util.cc index 054a41e..b68e3eb 100644 --- a/net/disk_cache/disk_cache_test_util.cc +++ b/net/disk_cache/disk_cache_test_util.cc @@ -141,7 +141,7 @@ bool MessageLoopHelper::WaitUntilCacheIoFinished(int num_callbacks) { ExpectCallbacks(num_callbacks); // Create a recurrent timer of 50 mS. if (!timer_.IsRunning()) - timer_.Start(TimeDelta::FromMilliseconds(50), this, + timer_.Start(FROM_HERE, TimeDelta::FromMilliseconds(50), this, &MessageLoopHelper::TimerExpired); MessageLoop::current()->Run(); return completed_; diff --git a/net/dns/dns_transaction.cc b/net/dns/dns_transaction.cc index 6e287c8..30fd7bf 100644 --- a/net/dns/dns_transaction.cc +++ b/net/dns/dns_transaction.cc @@ -306,7 +306,7 @@ int DnsTransaction::DoReadResponseComplete(int rv) { } void DnsTransaction::StartTimer(base::TimeDelta delay) { - timer_.Start(delay, this, &DnsTransaction::OnTimeout); + timer_.Start(FROM_HERE, delay, this, &DnsTransaction::OnTimeout); } void DnsTransaction::RevokeTimer() { diff --git a/net/http/http_response_body_drainer.cc b/net/http/http_response_body_drainer.cc index cf32aaa..aefb180 100644 --- a/net/http/http_response_body_drainer.cc +++ b/net/http/http_response_body_drainer.cc @@ -30,7 +30,8 @@ void HttpResponseBodyDrainer::Start(HttpNetworkSession* session) { int rv = DoLoop(OK); if (rv == ERR_IO_PENDING) { - timer_.Start(base::TimeDelta::FromSeconds(kTimeoutInSeconds), + timer_.Start(FROM_HERE, + base::TimeDelta::FromSeconds(kTimeoutInSeconds), this, &HttpResponseBodyDrainer::OnTimerFired); session_ = session; diff --git a/net/proxy/dhcp_proxy_script_adapter_fetcher_win.cc b/net/proxy/dhcp_proxy_script_adapter_fetcher_win.cc index 6b7283d..aaefc27 100644 --- a/net/proxy/dhcp_proxy_script_adapter_fetcher_win.cc +++ b/net/proxy/dhcp_proxy_script_adapter_fetcher_win.cc @@ -58,7 +58,7 @@ void DhcpProxyScriptAdapterFetcher::Fetch( state_ = STATE_WAIT_DHCP; callback_ = callback; - wait_timer_.Start(ImplGetTimeout(), + wait_timer_.Start(FROM_HERE, ImplGetTimeout(), this, &DhcpProxyScriptAdapterFetcher::OnTimeout); worker_thread_ = ImplCreateWorkerThread(AsWeakPtr()); worker_thread_->Start(adapter_name); diff --git a/net/proxy/dhcp_proxy_script_adapter_fetcher_win_unittest.cc b/net/proxy/dhcp_proxy_script_adapter_fetcher_win_unittest.cc index 47852a9..b8ed53c 100644 --- a/net/proxy/dhcp_proxy_script_adapter_fetcher_win_unittest.cc +++ b/net/proxy/dhcp_proxy_script_adapter_fetcher_win_unittest.cc @@ -53,7 +53,7 @@ class MockDhcpProxyScriptAdapterFetcher // the caller. fetcher_ = new MockProxyScriptFetcher(); if (fetcher_delay_ms_ != -1) { - fetcher_timer_.Start( + fetcher_timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(fetcher_delay_ms_), this, &MockDhcpProxyScriptAdapterFetcher::OnFetcherTimer); } diff --git a/net/proxy/dhcp_proxy_script_fetcher_win.cc b/net/proxy/dhcp_proxy_script_fetcher_win.cc index 5453284..000c918 100644 --- a/net/proxy/dhcp_proxy_script_fetcher_win.cc +++ b/net/proxy/dhcp_proxy_script_fetcher_win.cc @@ -169,7 +169,7 @@ void DhcpProxyScriptFetcherWin::OnFetcherDone(int result) { // for the rest of the results. if (state_ == STATE_NO_RESULTS) { state_ = STATE_SOME_RESULTS; - wait_timer_.Start( + wait_timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(ImplGetMaxWaitMs()), this, &DhcpProxyScriptFetcherWin::OnWaitTimer); } diff --git a/net/proxy/dhcp_proxy_script_fetcher_win_unittest.cc b/net/proxy/dhcp_proxy_script_fetcher_win_unittest.cc index fe103b7..9ecd923 100644 --- a/net/proxy/dhcp_proxy_script_fetcher_win_unittest.cc +++ b/net/proxy/dhcp_proxy_script_fetcher_win_unittest.cc @@ -53,7 +53,7 @@ class RealFetchTester { completion_callback_(this, &RealFetchTester::OnCompletion)), on_completion_is_error_(false) { // Make sure the test ends. - timeout_.Start( + timeout_.Start(FROM_HERE, base::TimeDelta::FromSeconds(5), this, &RealFetchTester::OnTimeout); } @@ -72,7 +72,7 @@ class RealFetchTester { // Put the cancellation into the queue before even running the // test to avoid the chance of one of the adapter fetcher worker // threads completing before cancellation. See http://crbug.com/86756. - cancel_timer_.Start(base::TimeDelta::FromMilliseconds(0), + cancel_timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(0), this, &RealFetchTester::OnCancelTimer); RunTest(); } @@ -225,7 +225,7 @@ class DummyDhcpProxyScriptAdapterFetcher void Fetch(const std::string& adapter_name, CompletionCallback* callback) OVERRIDE { client_callback_ = callback; - timer_.Start(base::TimeDelta::FromMilliseconds(fetch_delay_ms_), + timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(fetch_delay_ms_), this, &DummyDhcpProxyScriptAdapterFetcher::OnTimer); } diff --git a/net/proxy/init_proxy_resolver.cc b/net/proxy/init_proxy_resolver.cc index d2983b6..26d2e62 100644 --- a/net/proxy/init_proxy_resolver.cc +++ b/net/proxy/init_proxy_resolver.cc @@ -165,7 +165,8 @@ int InitProxyResolver::DoWait() { return OK; // Otherwise wait the specified amount of time. - wait_timer_.Start(wait_delay_, this, &InitProxyResolver::OnWaitTimerFired); + wait_timer_.Start(FROM_HERE, wait_delay_, this, + &InitProxyResolver::OnWaitTimerFired); net_log_.BeginEvent(NetLog::TYPE_INIT_PROXY_RESOLVER_WAIT, NULL); return ERR_IO_PENDING; } diff --git a/net/proxy/proxy_config_service_linux.cc b/net/proxy/proxy_config_service_linux.cc index 2e19589..1f601bd 100644 --- a/net/proxy/proxy_config_service_linux.cc +++ b/net/proxy/proxy_config_service_linux.cc @@ -453,7 +453,7 @@ class SettingGetterImplGConf : public ProxyConfigServiceLinux::SettingGetter { // We don't use Reset() because the timer may not yet be running. // (In that case Stop() is a no-op.) debounce_timer_.Stop(); - debounce_timer_.Start( + debounce_timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(kDebounceTimeoutMilliseconds), this, &SettingGetterImplGConf::OnDebouncedNotification); } @@ -781,7 +781,7 @@ GSettings* (*g_settings_new)(const gchar* schema); // We don't use Reset() because the timer may not yet be running. // (In that case Stop() is a no-op.) debounce_timer_.Stop(); - debounce_timer_.Start( + debounce_timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(kDebounceTimeoutMilliseconds), this, &SettingGetterImplGSettings::OnDebouncedNotification); } @@ -1341,7 +1341,7 @@ class SettingGetterImplKDE : public ProxyConfigServiceLinux::SettingGetter, // We don't use Reset() because the timer may not yet be running. // (In that case Stop() is a no-op.) debounce_timer_.Stop(); - debounce_timer_.Start(base::TimeDelta::FromMilliseconds( + debounce_timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds( kDebounceTimeoutMilliseconds), this, &SettingGetterImplKDE::OnDebouncedNotification); } diff --git a/net/socket/client_socket_pool_base.cc b/net/socket/client_socket_pool_base.cc index 24966c0..75fd528 100644 --- a/net/socket/client_socket_pool_base.cc +++ b/net/socket/client_socket_pool_base.cc @@ -90,7 +90,7 @@ void ConnectJob::Initialize(bool is_preconnect) { int ConnectJob::Connect() { if (timeout_duration_ != base::TimeDelta()) - timer_.Start(timeout_duration_, this, &ConnectJob::OnTimeout); + timer_.Start(FROM_HERE, timeout_duration_, this, &ConnectJob::OnTimeout); idle_ = false; @@ -131,7 +131,7 @@ void ConnectJob::NotifyDelegateOfCompletion(int rv) { void ConnectJob::ResetTimer(base::TimeDelta remaining_time) { timer_.Stop(); - timer_.Start(remaining_time, this, &ConnectJob::OnTimeout); + timer_.Start(FROM_HERE, remaining_time, this, &ConnectJob::OnTimeout); } void ConnectJob::LogConnectStart() { @@ -697,7 +697,7 @@ void ClientSocketPoolBaseHelper::EnableConnectBackupJobs() { void ClientSocketPoolBaseHelper::IncrementIdleCount() { if (++idle_socket_count_ == 1) - timer_.Start(TimeDelta::FromSeconds(kCleanupInterval), this, + timer_.Start(FROM_HERE, TimeDelta::FromSeconds(kCleanupInterval), this, &ClientSocketPoolBaseHelper::OnCleanupTimerFired); } diff --git a/net/socket/ssl_client_socket_nss.cc b/net/socket/ssl_client_socket_nss.cc index 617ddc3..11ee568 100644 --- a/net/socket/ssl_client_socket_nss.cc +++ b/net/socket/ssl_client_socket_nss.cc @@ -2053,7 +2053,7 @@ SECStatus SSLClientSocketNSS::OwnAuthCertHandler(void* arg, if (false_start && !that->handshake_callback_called_) { that->corked_ = true; - that->uncork_timer_.Start( + that->uncork_timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(kCorkTimeoutMs), that, &SSLClientSocketNSS::UncorkAfterTimeout); } diff --git a/net/socket/transport_client_socket_pool.cc b/net/socket/transport_client_socket_pool.cc index aa0932f..8cb9570 100644 --- a/net/socket/transport_client_socket_pool.cc +++ b/net/socket/transport_client_socket_pool.cc @@ -223,7 +223,7 @@ int TransportConnectJob::DoTransportConnect() { int rv = transport_socket_->Connect(&callback_); if (rv == ERR_IO_PENDING && AddressListStartsWithIPv6AndHasAnIPv4Addr(addresses_)) { - fallback_timer_.Start( + fallback_timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(kIPv6FallbackTimerInMs), this, &TransportConnectJob::DoIPv6FallbackTransportConnect); } diff --git a/remoting/host/heartbeat_sender.cc b/remoting/host/heartbeat_sender.cc index 589eb31..182c06e 100644 --- a/remoting/host/heartbeat_sender.cc +++ b/remoting/host/heartbeat_sender.cc @@ -77,7 +77,7 @@ void HeartbeatSender::OnSignallingConnected(SignalStrategy* signal_strategy, base::Unretained(this))); DoSendStanza(); - timer_.Start(base::TimeDelta::FromMilliseconds(interval_ms_), this, + timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(interval_ms_), this, &HeartbeatSender::DoSendStanza); } @@ -143,8 +143,8 @@ void HeartbeatSender::SetInterval(int interval) { // Restart the timer with the new interval. if (state_ == STARTED) { timer_.Stop(); - timer_.Start(base::TimeDelta::FromMilliseconds(interval_ms_), this, - &HeartbeatSender::DoSendStanza); + timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(interval_ms_), + this, &HeartbeatSender::DoSendStanza); } } } diff --git a/remoting/host/screen_recorder.cc b/remoting/host/screen_recorder.cc index d3f0e49..e0cf90a 100644 --- a/remoting/host/screen_recorder.cc +++ b/remoting/host/screen_recorder.cc @@ -181,7 +181,7 @@ void ScreenRecorder::StartCaptureTimer() { base::TimeDelta interval = base::TimeDelta::FromMilliseconds( static_cast<int>(base::Time::kMillisecondsPerSecond / max_rate_)); - capture_timer_.Start(interval, this, &ScreenRecorder::DoCapture); + capture_timer_.Start(FROM_HERE, interval, this, &ScreenRecorder::DoCapture); } void ScreenRecorder::DoCapture() { diff --git a/ui/base/animation/animation_container.cc b/ui/base/animation/animation_container.cc index 1e316cd..c82d26b 100644 --- a/ui/base/animation/animation_container.cc +++ b/ui/base/animation/animation_container.cc @@ -85,7 +85,7 @@ void AnimationContainer::SetMinTimerInterval(base::TimeDelta delta) { // that shouldn't be a problem for uses of Animation/AnimationContainer. timer_.Stop(); min_timer_interval_ = delta; - timer_.Start(min_timer_interval_, this, &AnimationContainer::Run); + timer_.Start(FROM_HERE, min_timer_interval_, this, &AnimationContainer::Run); } TimeDelta AnimationContainer::GetMinInterval() { diff --git a/views/controls/menu/menu_controller.cc b/views/controls/menu/menu_controller.cc index 1858993..acad114 100644 --- a/views/controls/menu/menu_controller.cc +++ b/views/controls/menu/menu_controller.cc @@ -168,8 +168,9 @@ class MenuController::MenuScrollTask { is_scrolling_up_ = new_is_up; if (!scrolling_timer_.IsRunning()) { - scrolling_timer_.Start(TimeDelta::FromMilliseconds(kScrollTimerMS), this, - &MenuScrollTask::Run); + scrolling_timer_.Start(FROM_HERE, + TimeDelta::FromMilliseconds(kScrollTimerMS), + this, &MenuScrollTask::Run); } } @@ -1437,7 +1438,7 @@ void MenuController::BuildMenuItemPath(MenuItemView* item, } void MenuController::StartShowTimer() { - show_timer_.Start(TimeDelta::FromMilliseconds(kShowDelay), this, + show_timer_.Start(FROM_HERE, TimeDelta::FromMilliseconds(kShowDelay), this, &MenuController::CommitPendingSelection); } @@ -1446,7 +1447,8 @@ void MenuController::StopShowTimer() { } void MenuController::StartCancelAllTimer() { - cancel_all_timer_.Start(TimeDelta::FromMilliseconds(kCloseOnExitTime), + cancel_all_timer_.Start(FROM_HERE, + TimeDelta::FromMilliseconds(kCloseOnExitTime), this, &MenuController::CancelAll); } diff --git a/views/controls/throbber.cc b/views/controls/throbber.cc index 34f20a8..741b0a6 100644 --- a/views/controls/throbber.cc +++ b/views/controls/throbber.cc @@ -34,7 +34,7 @@ void Throbber::Start() { start_time_ = Time::Now(); - timer_.Start(frame_time_ - TimeDelta::FromMilliseconds(10), + timer_.Start(FROM_HERE, frame_time_ - TimeDelta::FromMilliseconds(10), this, &Throbber::Run); running_ = true; @@ -110,8 +110,8 @@ void SmoothedThrobber::Start() { stop_timer_.Stop(); if (!running_ && !start_timer_.IsRunning()) { - start_timer_.Start(TimeDelta::FromMilliseconds(start_delay_ms_), this, - &SmoothedThrobber::StartDelayOver); + start_timer_.Start(FROM_HERE, TimeDelta::FromMilliseconds(start_delay_ms_), + this, &SmoothedThrobber::StartDelayOver); } } @@ -124,8 +124,8 @@ void SmoothedThrobber::Stop() { start_timer_.Stop(); stop_timer_.Stop(); - stop_timer_.Start(TimeDelta::FromMilliseconds(stop_delay_ms_), this, - &SmoothedThrobber::StopDelayOver); + stop_timer_.Start(FROM_HERE, TimeDelta::FromMilliseconds(stop_delay_ms_), + this, &SmoothedThrobber::StopDelayOver); } void SmoothedThrobber::StopDelayOver() { diff --git a/views/repeat_controller.cc b/views/repeat_controller.cc index bb70852..37e0892 100644 --- a/views/repeat_controller.cc +++ b/views/repeat_controller.cc @@ -25,8 +25,8 @@ RepeatController::~RepeatController() { void RepeatController::Start() { // The first timer is slightly longer than subsequent repeats. - timer_.Start(TimeDelta::FromMilliseconds(kInitialRepeatDelay), this, - &RepeatController::Run); + timer_.Start(FROM_HERE, TimeDelta::FromMilliseconds(kInitialRepeatDelay), + this, &RepeatController::Run); } void RepeatController::Stop() { @@ -37,7 +37,7 @@ void RepeatController::Stop() { // RepeatController, private: void RepeatController::Run() { - timer_.Start(TimeDelta::FromMilliseconds(kRepeatDelay), this, + timer_.Start(FROM_HERE, TimeDelta::FromMilliseconds(kRepeatDelay), this, &RepeatController::Run); callback_->Run(); } diff --git a/views/touchui/touch_factory.cc b/views/touchui/touch_factory.cc index 6580228..81dd41d 100644 --- a/views/touchui/touch_factory.cc +++ b/views/touchui/touch_factory.cc @@ -351,7 +351,8 @@ void TouchFactory::SetCursorVisible(bool show, bool start_timer) { // The cursor is going to be shown. Reset the timer for hiding it. if (show && start_timer) { cursor_timer_.Stop(); - cursor_timer_.Start(base::TimeDelta::FromSeconds(kCursorIdleSeconds), + cursor_timer_.Start( + FROM_HERE, base::TimeDelta::FromSeconds(kCursorIdleSeconds), this, &TouchFactory::HideCursorForInactivity); } else { cursor_timer_.Stop(); diff --git a/webkit/fileapi/obfuscated_file_system_file_util.cc b/webkit/fileapi/obfuscated_file_system_file_util.cc index 11fae60..53c01f6 100644 --- a/webkit/fileapi/obfuscated_file_system_file_util.cc +++ b/webkit/fileapi/obfuscated_file_system_file_util.cc @@ -1192,8 +1192,8 @@ void ObfuscatedFileSystemFileUtil::MarkUsed() { if (timer_.IsRunning()) timer_.Reset(); else - timer_.Start(base::TimeDelta::FromSeconds(kFlushDelaySeconds), this, - &ObfuscatedFileSystemFileUtil::DropDatabases); + timer_.Start(FROM_HERE, base::TimeDelta::FromSeconds(kFlushDelaySeconds), + this, &ObfuscatedFileSystemFileUtil::DropDatabases); } void ObfuscatedFileSystemFileUtil::DropDatabases() { diff --git a/webkit/glue/resource_fetcher.cc b/webkit/glue/resource_fetcher.cc index 28885b4..2a36503 100644 --- a/webkit/glue/resource_fetcher.cc +++ b/webkit/glue/resource_fetcher.cc @@ -127,7 +127,7 @@ ResourceFetcherWithTimeout::ResourceFetcherWithTimeout( const GURL& url, WebFrame* frame, WebURLRequest::TargetType target_type, int timeout_secs, Callback* callback) : ResourceFetcher(url, frame, target_type, callback) { - timeout_timer_.Start(TimeDelta::FromSeconds(timeout_secs), this, + timeout_timer_.Start(FROM_HERE, TimeDelta::FromSeconds(timeout_secs), this, &ResourceFetcherWithTimeout::TimeoutFired); } diff --git a/webkit/glue/resource_fetcher_unittest.cc b/webkit/glue/resource_fetcher_unittest.cc index 9ef0fc6..be878f3 100644 --- a/webkit/glue/resource_fetcher_unittest.cc +++ b/webkit/glue/resource_fetcher_unittest.cc @@ -70,7 +70,8 @@ class FetcherDelegate { } void StartTimer() { - timer_.Start(base::TimeDelta::FromMilliseconds(kMaxWaitTimeMs), + timer_.Start(FROM_HERE, + base::TimeDelta::FromMilliseconds(kMaxWaitTimeMs), this, &FetcherDelegate::TimerFired); } diff --git a/webkit/glue/webkitclient_impl.cc b/webkit/glue/webkitclient_impl.cc index 792a700a..48e8e6b 100644 --- a/webkit/glue/webkitclient_impl.cc +++ b/webkit/glue/webkitclient_impl.cc @@ -527,8 +527,8 @@ void WebKitClientImpl::setSharedTimerFireInterval(double interval_seconds) { interval = 0; shared_timer_.Stop(); - shared_timer_.Start(base::TimeDelta::FromMicroseconds(interval), this, - &WebKitClientImpl::DoTimeout); + shared_timer_.Start(FROM_HERE, base::TimeDelta::FromMicroseconds(interval), + this, &WebKitClientImpl::DoTimeout); } void WebKitClientImpl::stopSharedTimer() { diff --git a/webkit/plugins/npapi/webplugin_delegate_impl_mac.mm b/webkit/plugins/npapi/webplugin_delegate_impl_mac.mm index bdd6eac..5de0b59 100644 --- a/webkit/plugins/npapi/webplugin_delegate_impl_mac.mm +++ b/webkit/plugins/npapi/webplugin_delegate_impl_mac.mm @@ -122,7 +122,8 @@ class CarbonIdleEventSource { // Adds |delegate| to this visibility group. void RegisterDelegate(WebPluginDelegateImpl* delegate) { if (delegates_.empty()) { - timer_.Start(base::TimeDelta::FromMilliseconds(timer_period_), + timer_.Start(FROM_HERE, + base::TimeDelta::FromMilliseconds(timer_period_), this, &VisibilityGroup::SendIdleEvents); } delegates_.insert(delegate); @@ -1023,7 +1024,7 @@ void WebPluginDelegateImpl::PluginVisibilityChanged() { if (instance()->drawing_model() == NPDrawingModelCoreAnimation) { bool plugin_visible = container_is_visible_ && !clip_rect_.IsEmpty(); if (plugin_visible && !redraw_timer_->IsRunning() && windowed_handle()) { - redraw_timer_->Start( + redraw_timer_->Start(FROM_HERE, base::TimeDelta::FromMilliseconds(kCoreAnimationRedrawPeriodMs), this, &WebPluginDelegateImpl::DrawLayerInSurface); } else if (!plugin_visible) { diff --git a/webkit/quota/quota_database.cc b/webkit/quota/quota_database.cc index c9f2056..d34451e 100644 --- a/webkit/quota/quota_database.cc +++ b/webkit/quota/quota_database.cc @@ -430,8 +430,8 @@ void QuotaDatabase::Commit() { void QuotaDatabase::ScheduleCommit() { if (timer_.IsRunning()) return; - timer_.Start(base::TimeDelta::FromMilliseconds(kCommitIntervalMs), this, - &QuotaDatabase::Commit); + timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(kCommitIntervalMs), + this, &QuotaDatabase::Commit); } bool QuotaDatabase::FindOriginUsedCount( diff --git a/webkit/quota/quota_manager.cc b/webkit/quota/quota_manager.cc index b5d9196..60d7c32 100644 --- a/webkit/quota/quota_manager.cc +++ b/webkit/quota/quota_manager.cc @@ -507,7 +507,8 @@ class QuotaManager::InitializeTask : public QuotaManager::DatabaseTaskBase { virtual void DatabaseTaskCompleted() OVERRIDE { manager()->need_initialize_origins_ = need_initialize_origins_; manager()->DidInitializeTemporaryGlobalQuota(temporary_storage_quota_); - manager()->histogram_timer_.Start(QuotaManager::kReportHistogramInterval, + manager()->histogram_timer_.Start(FROM_HERE, + QuotaManager::kReportHistogramInterval, manager(), &QuotaManager::ReportHistogram); } diff --git a/webkit/quota/quota_temporary_storage_evictor.cc b/webkit/quota/quota_temporary_storage_evictor.cc index 8990331..49229c3 100644 --- a/webkit/quota/quota_temporary_storage_evictor.cc +++ b/webkit/quota/quota_temporary_storage_evictor.cc @@ -128,15 +128,15 @@ void QuotaTemporaryStorageEvictor::Start() { if (histogram_timer_.IsRunning()) return; - histogram_timer_.Start(kHistogramReportInterval, this, + histogram_timer_.Start(FROM_HERE, kHistogramReportInterval, this, &QuotaTemporaryStorageEvictor::ReportPerHourHistogram); } void QuotaTemporaryStorageEvictor::StartEvictionTimerWithDelay(int delay_ms) { if (eviction_timer_.IsRunning()) return; - eviction_timer_.Start(base::TimeDelta::FromMilliseconds(delay_ms), this, - &QuotaTemporaryStorageEvictor::ConsiderEviction); + eviction_timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(delay_ms), + this, &QuotaTemporaryStorageEvictor::ConsiderEviction); } void QuotaTemporaryStorageEvictor::ConsiderEviction() { diff --git a/webkit/tools/test_shell/layout_test_controller.cc b/webkit/tools/test_shell/layout_test_controller.cc index 5a32064..4b3fda1 100644 --- a/webkit/tools/test_shell/layout_test_controller.cc +++ b/webkit/tools/test_shell/layout_test_controller.cc @@ -103,7 +103,7 @@ void LayoutTestController::WorkQueue::ProcessWorkSoon() { if (!queue_.empty()) { // We delay processing queued work to avoid recursion problems. - timer_.Start(base::TimeDelta(), this, &WorkQueue::ProcessWork); + timer_.Start(FROM_HERE, base::TimeDelta(), this, &WorkQueue::ProcessWork); } else if (!wait_until_done_) { shell_->TestFinished(); } diff --git a/webkit/tools/test_shell/simple_resource_loader_bridge.cc b/webkit/tools/test_shell/simple_resource_loader_bridge.cc index babefc1..73f9160 100644 --- a/webkit/tools/test_shell/simple_resource_loader_bridge.cc +++ b/webkit/tools/test_shell/simple_resource_loader_bridge.cc @@ -321,7 +321,7 @@ class RequestProxy : public net::URLRequest::Delegate, if (request_->has_upload() && params->load_flags & net::LOAD_ENABLE_UPLOAD_PROGRESS) { - upload_progress_timer_.Start( + upload_progress_timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(kUpdateUploadProgressIntervalMsec), this, &RequestProxy::MaybeUpdateUploadProgress); } |