Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2255)

Unified Diff: base/critical_closure.h

Issue 257003007: Introduce a new framework for back-and-forth tracked/protected preferences migration. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix some tests -- more to come Created 6 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | base/critical_closure_ios.mm » ('j') | base/files/important_file_writer_unittest.cc » ('J')
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: base/critical_closure.h
diff --git a/base/critical_closure.h b/base/critical_closure.h
index ca51ed5cef27d40923ba8e4d99de4044c63fa457..cea6e7af0d086f5eba2c12471cbbcb0ea81e91bd 100644
--- a/base/critical_closure.h
+++ b/base/critical_closure.h
@@ -9,7 +9,8 @@
namespace base {
-// Returns a closure that will continue to run for a period of time when the
+// Returns a closure (which may return a result, but must not require any extra
+// arguments) that will continue to run for a period of time when the
// application goes to the background if possible on platforms where
// applications don't execute while backgrounded, otherwise the original task is
// returned.
@@ -23,9 +24,11 @@ namespace base {
// background running time, |MakeCriticalClosure| should be applied on them
// before posting.
#if defined(OS_IOS)
-base::Closure MakeCriticalClosure(const base::Closure& closure);
+template <typename R>
+Callback<R(void)> MakeCriticalClosure(const Callback<R(void)>& closure);
#else
-inline base::Closure MakeCriticalClosure(const base::Closure& closure) {
+template <typename R>
+inline Callback<R(void)> MakeCriticalClosure(const Callback<R(void)>& closure) {
// No-op for platforms where the application does not need to acquire
// background time for closures to finish when it goes into the background.
return closure;
« no previous file with comments | « no previous file | base/critical_closure_ios.mm » ('j') | base/files/important_file_writer_unittest.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698