Index: base/threading/worker_pool_win.cc |
diff --git a/base/threading/worker_pool_win.cc b/base/threading/worker_pool_win.cc |
index 575caaa6ba803079b4b37991de26026934682c0b..f1d7da27c29fb1bd4a16c1dd72ad182dbb02db85 100644 |
--- a/base/threading/worker_pool_win.cc |
+++ b/base/threading/worker_pool_win.cc |
@@ -27,7 +27,7 @@ DWORD CALLBACK WorkItemCallback(void* param) { |
tracked_objects::TaskStopwatch stopwatch; |
stopwatch.Start(); |
- pending_task->task.Run(); |
+ std::move(pending_task->task).Run(); |
stopwatch.Stop(); |
g_worker_pool_running_on_this_thread.Get().Set(false); |
@@ -58,8 +58,9 @@ bool PostTaskInternal(PendingTask* pending_task, bool task_is_slow) { |
// static |
bool WorkerPool::PostTask(const tracked_objects::Location& from_here, |
- const base::Closure& task, bool task_is_slow) { |
- PendingTask* pending_task = new PendingTask(from_here, task); |
+ base::OnceClosure task, |
+ bool task_is_slow) { |
+ PendingTask* pending_task = new PendingTask(from_here, std::move(task)); |
return PostTaskInternal(pending_task, task_is_slow); |
} |