Index: base/task/cancelable_task_tracker.cc |
diff --git a/base/task/cancelable_task_tracker.cc b/base/task/cancelable_task_tracker.cc |
index a756f4ec3eec50b56a12321cac4ad46f3cd5785c..881249b590a52fa8621d19d194baf722a1da7082 100644 |
--- a/base/task/cancelable_task_tracker.cc |
+++ b/base/task/cancelable_task_tracker.cc |
@@ -131,9 +131,10 @@ CancelableTaskTracker::TaskId CancelableTaskTracker::NewTrackedTaskId( |
// Will always run |untrack_and_delete_flag| on current MessageLoop. |
base::ScopedClosureRunner* untrack_and_delete_flag_runner = |
- new base::ScopedClosureRunner(Bind(&RunOrPostToTaskRunner, |
- base::ThreadTaskRunnerHandle::Get(), |
- untrack_and_delete_flag)); |
+ new base::ScopedClosureRunner( |
+ Bind(&RunOrPostToTaskRunner, |
+ RetainedRef(base::ThreadTaskRunnerHandle::Get()), |
+ untrack_and_delete_flag)); |
*is_canceled_cb = |
Bind(&IsCanceled, flag, base::Owned(untrack_and_delete_flag_runner)); |