Move media library AutoTaskRunner to base and rename ScopedTaskRunner.
This is needed to avoid faux dependencies on media/ creeping in to remoting/ code, and creating linker issues.
BUG=
TEST=Everything works as before.
Review URL: http://codereview.chromium.org/7062013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@86971 0039d316-1c4b-4281-b951-d872f2087c98
CrOS-Libchrome-Original-Commit: c9c0d079c24a02f8f9b667f3cbf06d234a586625
diff --git a/base/task.cc b/base/task.cc
index d33f3e1..e4da547 100644
--- a/base/task.cc
+++ b/base/task.cc
@@ -1,4 +1,4 @@
-// Copyright (c) 2010 The Chromium Authors. All rights reserved.
+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -15,3 +15,23 @@
CancelableTask::~CancelableTask() {
}
+
+namespace base {
+
+ScopedTaskRunner::ScopedTaskRunner(Task* task) : task_(task) {
+}
+
+ScopedTaskRunner::~ScopedTaskRunner() {
+ if (task_) {
+ task_->Run();
+ delete task_;
+ }
+}
+
+Task* ScopedTaskRunner::Release() {
+ Task* tmp = task_;
+ task_ = NULL;
+ return tmp;
+}
+
+} // namespace base