1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/ipc/chromium/src/base/timer.cc Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,28 @@ 1.4 +// Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. 1.5 +// Use of this source code is governed by a BSD-style license that can be 1.6 +// found in the LICENSE file. 1.7 + 1.8 +#include "base/timer.h" 1.9 + 1.10 +#include "base/message_loop.h" 1.11 + 1.12 +namespace base { 1.13 + 1.14 +void BaseTimer_Helper::OrphanDelayedTask() { 1.15 + if (delayed_task_) { 1.16 + delayed_task_->timer_ = NULL; 1.17 + delayed_task_ = NULL; 1.18 + } 1.19 +} 1.20 + 1.21 +void BaseTimer_Helper::InitiateDelayedTask(TimerTask* timer_task) { 1.22 + OrphanDelayedTask(); 1.23 + 1.24 + delayed_task_ = timer_task; 1.25 + delayed_task_->timer_ = this; 1.26 + MessageLoop::current()->PostDelayedTask( 1.27 + FROM_HERE, timer_task, 1.28 + static_cast<int>(timer_task->delay_.InMilliseconds())); 1.29 +} 1.30 + 1.31 +} // namespace base