summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--base/base.gyp2
-rw-r--r--base/base.gypi1
-rw-r--r--base/bind_helpers.cc15
-rw-r--r--base/bind_helpers.h19
-rw-r--r--base/callback_helpers.cc42
-rw-r--r--base/callback_helpers.h20
-rw-r--r--base/callback_helpers_unittest.cc (renamed from base/bind_helpers_unittest.cc)28
-rw-r--r--base/mac/bind_objc_block_unittest.mm2
-rw-r--r--base/prefs/pref_member.cc2
-rw-r--r--base/test/unit_test_launcher.cc1
-rw-r--r--chrome/browser/ui/android/ssl_client_certificate_request.cc5
-rw-r--r--chrome/common/cancelable_task_tracker.cc2
-rw-r--r--chromeos/dbus/blocking_method_caller.cc1
-rw-r--r--cloud_print/service/win/cloud_print_service.cc1
-rw-r--r--cloud_print/service/win/cloud_print_service_config.cc1
-rw-r--r--content/browser/gpu/gpu_process_host.cc11
-rw-r--r--content/browser/renderer_host/media/web_contents_video_capture_device.cc4
-rw-r--r--content/browser/renderer_host/render_widget_host_view_android.cc13
-rw-r--r--content/browser/renderer_host/render_widget_host_view_aura.cc11
-rw-r--r--content/browser/renderer_host/render_widget_host_view_mac.mm7
-rw-r--r--content/browser/renderer_host/render_widget_host_view_win.cc7
-rw-r--r--content/common/sandbox_linux.cc2
-rw-r--r--net/cert/cert_verify_proc_unittest.cc1
-rw-r--r--remoting/client/rectangle_update_decoder.cc2
-rw-r--r--remoting/protocol/client_control_dispatcher.cc1
-rw-r--r--remoting/protocol/host_control_dispatcher.cc1
-rw-r--r--remoting/protocol/host_event_dispatcher.cc2
-rw-r--r--tools/android/forwarder2/device_controller.cc2
-rw-r--r--tools/android/memdump/memdump.cc2
-rw-r--r--ui/surface/accelerated_surface_win.cc2
30 files changed, 137 insertions, 73 deletions
diff --git a/base/base.gyp b/base/base.gyp
index fabc868..0cdcaa4 100644
--- a/base/base.gyp
+++ b/base/base.gyp
@@ -455,11 +455,11 @@
'atomicops_unittest.cc',
'barrier_closure_unittest.cc',
'base64_unittest.cc',
- 'bind_helpers_unittest.cc',
'bind_unittest.cc',
'bind_unittest.nc',
'bits_unittest.cc',
'build_time_unittest.cc',
+ 'callback_helpers_unittest.cc',
'callback_unittest.cc',
'callback_unittest.nc',
'cancelable_callback_unittest.cc',
diff --git a/base/base.gypi b/base/base.gypi
index 02697b2..9bac4fd 100644
--- a/base/base.gypi
+++ b/base/base.gypi
@@ -104,6 +104,7 @@
'build_time.cc',
'build_time.h',
'callback.h',
+ 'callback_helpers.cc',
'callback_helpers.h',
'callback_internal.cc',
'callback_internal.h',
diff --git a/base/bind_helpers.cc b/base/bind_helpers.cc
index f2fc3bb..f1fe46d 100644
--- a/base/bind_helpers.cc
+++ b/base/bind_helpers.cc
@@ -11,19 +11,4 @@ namespace base {
void DoNothing() {
}
-ScopedClosureRunner::ScopedClosureRunner(const Closure& closure)
- : closure_(closure) {
-}
-
-ScopedClosureRunner::~ScopedClosureRunner() {
- if (!closure_.is_null())
- closure_.Run();
-}
-
-Closure ScopedClosureRunner::Release() {
- Closure result = closure_;
- closure_.Reset();
- return result;
-}
-
} // namespace base
diff --git a/base/bind_helpers.h b/base/bind_helpers.h
index 0cfaab7..d717892 100644
--- a/base/bind_helpers.h
+++ b/base/bind_helpers.h
@@ -139,10 +139,6 @@
// pointer when invoked. Only use this when necessary.
// In most cases MessageLoop::DeleteSoon() is a better
// fit.
-// ScopedClosureRunner - Scoper object that runs the wrapped closure when it
-// goes out of scope. It's conceptually similar to
-// scoped_ptr<> but calls Run() instead of deleting
-// the pointer.
#ifndef BASE_BIND_HELPERS_H_
#define BASE_BIND_HELPERS_H_
@@ -543,21 +539,6 @@ void DeletePointer(T* obj) {
delete obj;
}
-// ScopedClosureRunner is akin to scoped_ptr for Closures. It ensures that the
-// Closure is executed and deleted no matter how the current scope exits.
-class BASE_EXPORT ScopedClosureRunner {
- public:
- explicit ScopedClosureRunner(const Closure& closure);
- ~ScopedClosureRunner();
-
- Closure Release();
-
- private:
- Closure closure_;
-
- DISALLOW_IMPLICIT_CONSTRUCTORS(ScopedClosureRunner);
-};
-
} // namespace base
#endif // BASE_BIND_HELPERS_H_
diff --git a/base/callback_helpers.cc b/base/callback_helpers.cc
new file mode 100644
index 0000000..ef02b2b
--- /dev/null
+++ b/base/callback_helpers.cc
@@ -0,0 +1,42 @@
+// Copyright 2013 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.
+
+#include "base/callback_helpers.h"
+
+#include "base/callback.h"
+
+namespace base {
+
+ScopedClosureRunner::ScopedClosureRunner() {
+}
+
+ScopedClosureRunner::ScopedClosureRunner(const Closure& closure)
+ : closure_(closure) {
+}
+
+ScopedClosureRunner::~ScopedClosureRunner() {
+ if (!closure_.is_null())
+ closure_.Run();
+}
+
+void ScopedClosureRunner::Reset() {
+ Closure old_closure = Release();
+ if (!old_closure.is_null())
+ old_closure.Run();
+}
+
+void ScopedClosureRunner::Reset(const Closure& closure) {
+ Closure old_closure = Release();
+ closure_ = closure;
+ if (!old_closure.is_null())
+ old_closure.Run();
+}
+
+Closure ScopedClosureRunner::Release() {
+ Closure result = closure_;
+ closure_.Reset();
+ return result;
+}
+
+} // namespace base
diff --git a/base/callback_helpers.h b/base/callback_helpers.h
index 52cb71b..8481e3e 100644
--- a/base/callback_helpers.h
+++ b/base/callback_helpers.h
@@ -14,7 +14,9 @@
#ifndef BASE_CALLBACK_HELPERS_H_
#define BASE_CALLBACK_HELPERS_H_
+#include "base/basictypes.h"
#include "base/callback.h"
+#include "base/compiler_specific.h"
namespace base {
@@ -25,6 +27,24 @@ base::Callback<Sig> ResetAndReturn(base::Callback<Sig>* cb) {
return ret;
}
+// ScopedClosureRunner is akin to scoped_ptr for Closures. It ensures that the
+// Closure is executed and deleted no matter how the current scope exits.
+class BASE_EXPORT ScopedClosureRunner {
+ public:
+ ScopedClosureRunner();
+ explicit ScopedClosureRunner(const Closure& closure);
+ ~ScopedClosureRunner();
+
+ void Reset();
+ void Reset(const Closure& closure);
+ Closure Release() WARN_UNUSED_RESULT;
+
+ private:
+ Closure closure_;
+
+ DISALLOW_COPY_AND_ASSIGN(ScopedClosureRunner);
+};
+
} // namespace base
#endif // BASE_CALLBACK_HELPERS_H_
diff --git a/base/bind_helpers_unittest.cc b/base/callback_helpers_unittest.cc
index 3ef2d75..3b17a6b 100644
--- a/base/bind_helpers_unittest.cc
+++ b/base/callback_helpers_unittest.cc
@@ -1,11 +1,11 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2013 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.
-#include "base/bind_helpers.h"
+#include "base/callback_helpers.h"
-#include "base/callback.h"
#include "base/bind.h"
+#include "base/callback.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace {
@@ -36,4 +36,26 @@ TEST(BindHelpersTest, TestScopedClosureRunnerRelease) {
EXPECT_EQ(1, run_count);
}
+TEST(BindHelpersTest, TestScopedClosureRunnerReset) {
+ int run_count_1 = 0;
+ int run_count_2 = 0;
+ {
+ base::ScopedClosureRunner runner;
+ runner.Reset(base::Bind(&Increment, &run_count_1));
+ runner.Reset(base::Bind(&Increment, &run_count_2));
+ EXPECT_EQ(1, run_count_1);
+ EXPECT_EQ(0, run_count_2);
+ }
+ EXPECT_EQ(1, run_count_2);
+
+ int run_count_3 = 0;
+ {
+ base::ScopedClosureRunner runner(base::Bind(&Increment, &run_count_3));
+ EXPECT_EQ(0, run_count_3);
+ runner.Reset();
+ EXPECT_EQ(1, run_count_3);
+ }
+ EXPECT_EQ(1, run_count_3);
+}
+
} // namespace
diff --git a/base/mac/bind_objc_block_unittest.mm b/base/mac/bind_objc_block_unittest.mm
index 888b3dc..a4bcd76 100644
--- a/base/mac/bind_objc_block_unittest.mm
+++ b/base/mac/bind_objc_block_unittest.mm
@@ -6,7 +6,7 @@
#include "base/callback.h"
#include "base/bind.h"
-#include "base/bind_helpers.h"
+#include "base/callback_helpers.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace {
diff --git a/base/prefs/pref_member.cc b/base/prefs/pref_member.cc
index e3f6ac0..eb70839 100644
--- a/base/prefs/pref_member.cc
+++ b/base/prefs/pref_member.cc
@@ -4,8 +4,8 @@
#include "base/prefs/pref_member.h"
-#include "base/bind_helpers.h"
#include "base/callback.h"
+#include "base/callback_helpers.h"
#include "base/location.h"
#include "base/prefs/pref_service.h"
#include "base/value_conversions.h"
diff --git a/base/test/unit_test_launcher.cc b/base/test/unit_test_launcher.cc
index 49ad727..0116bba 100644
--- a/base/test/unit_test_launcher.cc
+++ b/base/test/unit_test_launcher.cc
@@ -5,6 +5,7 @@
#include "base/test/unit_test_launcher.h"
#include "base/bind.h"
+#include "base/callback_helpers.h"
#include "base/command_line.h"
#include "base/compiler_specific.h"
#include "base/files/scoped_temp_dir.h"
diff --git a/chrome/browser/ui/android/ssl_client_certificate_request.cc b/chrome/browser/ui/android/ssl_client_certificate_request.cc
index 2b87b41..ea80270 100644
--- a/chrome/browser/ui/android/ssl_client_certificate_request.cc
+++ b/chrome/browser/ui/android/ssl_client_certificate_request.cc
@@ -7,6 +7,7 @@
#include "base/android/jni_array.h"
#include "base/android/jni_string.h"
#include "base/android/scoped_java_ref.h"
+#include "base/basictypes.h"
#include "base/bind.h"
#include "base/callback_helpers.h"
#include "base/compiler_specific.h"
@@ -115,7 +116,7 @@ void StartClientCertificateRequest(
return;
}
- guard.Release();
+ ignore_result(guard.Release());
// Ownership was transferred to Java.
chrome::SelectCertificateCallback* ALLOW_UNUSED dummy =
@@ -187,7 +188,7 @@ static void OnSystemRequestCompletion(
return;
}
- guard.Release();
+ ignore_result(guard.Release());
// RecordClientCertificateKey() must be called on the I/O thread,
// before the callback is called with the selected certificate on
diff --git a/chrome/common/cancelable_task_tracker.cc b/chrome/common/cancelable_task_tracker.cc
index f27d116..4f2c9af 100644
--- a/chrome/common/cancelable_task_tracker.cc
+++ b/chrome/common/cancelable_task_tracker.cc
@@ -7,7 +7,7 @@
#include <utility>
#include "base/bind.h"
-#include "base/bind_helpers.h"
+#include "base/callback_helpers.h"
#include "base/compiler_specific.h"
#include "base/location.h"
#include "base/memory/ref_counted.h"
diff --git a/chromeos/dbus/blocking_method_caller.cc b/chromeos/dbus/blocking_method_caller.cc
index 3c288f1..e4ddac5 100644
--- a/chromeos/dbus/blocking_method_caller.cc
+++ b/chromeos/dbus/blocking_method_caller.cc
@@ -5,6 +5,7 @@
#include "chromeos/dbus/blocking_method_caller.h"
#include "base/bind.h"
+#include "base/callback_helpers.h"
#include "base/location.h"
#include "base/threading/thread_restrictions.h"
#include "dbus/bus.h"
diff --git a/cloud_print/service/win/cloud_print_service.cc b/cloud_print/service/win/cloud_print_service.cc
index e93ad05..c6254c0 100644
--- a/cloud_print/service/win/cloud_print_service.cc
+++ b/cloud_print/service/win/cloud_print_service.cc
@@ -10,6 +10,7 @@
#include "base/at_exit.h"
#include "base/bind.h"
+#include "base/callback_helpers.h"
#include "base/command_line.h"
#include "base/file_util.h"
#include "base/guid.h"
diff --git a/cloud_print/service/win/cloud_print_service_config.cc b/cloud_print/service/win/cloud_print_service_config.cc
index 14694cc..bad7111 100644
--- a/cloud_print/service/win/cloud_print_service_config.cc
+++ b/cloud_print/service/win/cloud_print_service_config.cc
@@ -7,6 +7,7 @@
#include "base/at_exit.h"
#include "base/bind.h"
+#include "base/callback_helpers.h"
#include "base/command_line.h"
#include "base/file_util.h"
#include "base/message_loop/message_loop.h"
diff --git a/content/browser/gpu/gpu_process_host.cc b/content/browser/gpu/gpu_process_host.cc
index 29d914e..c694cdc 100644
--- a/content/browser/gpu/gpu_process_host.cc
+++ b/content/browser/gpu/gpu_process_host.cc
@@ -6,8 +6,9 @@
#include "base/base64.h"
#include "base/base_switches.h"
+#include "base/basictypes.h"
#include "base/bind.h"
-#include "base/bind_helpers.h"
+#include "base/callback_helpers.h"
#include "base/command_line.h"
#include "base/debug/trace_event.h"
#include "base/logging.h"
@@ -900,7 +901,7 @@ void GpuProcessHost::OnAcceleratedSurfaceBuffersSwapped(
// if the browser is waiting for a new frame. Otherwise the RenderWidgetHelper
// will forward to the RenderWidgetHostView via RenderProcessHostImpl and
// RenderWidgetHostImpl.
- scoped_completion_runner.Release();
+ ignore_result(scoped_completion_runner.Release());
ViewHostMsg_CompositorSurfaceBuffersSwapped_Params view_params;
view_params.surface_id = params.surface_id;
@@ -936,7 +937,7 @@ void GpuProcessHost::OnAcceleratedSurfaceBuffersSwapped(
TRACE_EVENT1("gpu", "SurfaceIDNotFound_RoutingToUI",
"surface_id", params.surface_id);
// This is a content area swap, send it on to the UI thread.
- scoped_completion_runner.Release();
+ ignore_result(scoped_completion_runner.Release());
RouteOnUIThread(GpuHostMsg_AcceleratedSurfaceBuffersSwapped(params));
return;
}
@@ -950,7 +951,7 @@ void GpuProcessHost::OnAcceleratedSurfaceBuffersSwapped(
"EarlyOut_NativeWindowNotFound",
"handle",
handle.handle);
- scoped_completion_runner.Release();
+ ignore_result(scoped_completion_runner.Release());
AcceleratedSurfaceBuffersSwappedCompleted(host_id_,
params.route_id,
params.surface_id,
@@ -961,7 +962,7 @@ void GpuProcessHost::OnAcceleratedSurfaceBuffersSwapped(
return;
}
- scoped_completion_runner.Release();
+ ignore_result(scoped_completion_runner.Release());
presenter->AsyncPresentAndAcknowledge(
params.size,
params.surface_handle,
diff --git a/content/browser/renderer_host/media/web_contents_video_capture_device.cc b/content/browser/renderer_host/media/web_contents_video_capture_device.cc
index e27b703..2788bb2 100644
--- a/content/browser/renderer_host/media/web_contents_video_capture_device.cc
+++ b/content/browser/renderer_host/media/web_contents_video_capture_device.cc
@@ -56,8 +56,8 @@
#include "base/basictypes.h"
#include "base/bind.h"
-#include "base/bind_helpers.h"
#include "base/callback_forward.h"
+#include "base/callback_helpers.h"
#include "base/debug/trace_event.h"
#include "base/logging.h"
#include "base/memory/scoped_ptr.h"
@@ -693,7 +693,7 @@ void RenderVideoFrame(const SkBitmap& input,
}
// The result is now ready.
- failure_handler.Release();
+ ignore_result(failure_handler.Release());
done_cb.Run(true);
}
diff --git a/content/browser/renderer_host/render_widget_host_view_android.cc b/content/browser/renderer_host/render_widget_host_view_android.cc
index f489abb..7283973 100644
--- a/content/browser/renderer_host/render_widget_host_view_android.cc
+++ b/content/browser/renderer_host/render_widget_host_view_android.cc
@@ -6,8 +6,9 @@
#include <android/bitmap.h>
+#include "base/basictypes.h"
#include "base/bind.h"
-#include "base/bind_helpers.h"
+#include "base/callback_helpers.h"
#include "base/command_line.h"
#include "base/logging.h"
#include "base/message_loop/message_loop.h"
@@ -420,9 +421,9 @@ void RenderWidgetHostViewAndroid::OnTextInputStateChanged(
// If an acknowledgement is required for this event, regardless of how we exit
// from this method, we must acknowledge that we processed the input state
// change.
- base::ScopedClosureRunner ack_caller(base::Bind(&SendImeEventAck, host_));
- if (!params.require_ack)
- ack_caller.Release();
+ base::ScopedClosureRunner ack_caller;
+ if (params.require_ack)
+ ack_caller.Reset(base::Bind(&SendImeEventAck, host_));
if (!IsShowing())
return;
@@ -1228,7 +1229,7 @@ void RenderWidgetHostViewAndroid::PrepareTextureCopyOutputResult(
if (!texture_mailbox->IsTexture())
return;
- scoped_callback_runner.Release();
+ ignore_result(scoped_callback_runner.Release());
gl_helper->CropScaleReadbackAndCleanMailbox(
texture_mailbox->name(),
@@ -1264,7 +1265,7 @@ void RenderWidgetHostViewAndroid::PrepareBitmapCopyOutputResult(
DCHECK_EQ(source->width(), dst_size_in_pixel.width());
DCHECK_EQ(source->height(), dst_size_in_pixel.height());
- scoped_callback_runner.Release();
+ ignore_result(scoped_callback_runner.Release());
callback.Run(true, *source);
}
diff --git a/content/browser/renderer_host/render_widget_host_view_aura.cc b/content/browser/renderer_host/render_widget_host_view_aura.cc
index 4a0cab7..261278f 100644
--- a/content/browser/renderer_host/render_widget_host_view_aura.cc
+++ b/content/browser/renderer_host/render_widget_host_view_aura.cc
@@ -4,8 +4,9 @@
#include "content/browser/renderer_host/render_widget_host_view_aura.h"
+#include "base/basictypes.h"
#include "base/bind.h"
-#include "base/bind_helpers.h"
+#include "base/callback_helpers.h"
#include "base/command_line.h"
#include "base/debug/trace_event.h"
#include "base/logging.h"
@@ -1815,7 +1816,7 @@ void RenderWidgetHostViewAura::PrepareTextureCopyOutputResult(
if (!texture_mailbox->IsTexture())
return;
- scoped_callback_runner.Release();
+ ignore_result(scoped_callback_runner.Release());
gl_helper->CropScaleReadbackAndCleanMailbox(
texture_mailbox->name(),
@@ -1848,7 +1849,7 @@ void RenderWidgetHostViewAura::PrepareBitmapCopyOutputResult(
if (!source)
return;
- scoped_callback_runner.Release();
+ ignore_result(scoped_callback_runner.Release());
SkBitmap bitmap = skia::ImageOperations::Resize(
*source,
@@ -1925,7 +1926,7 @@ void RenderWidgetHostViewAura::CopyFromCompositingSurfaceHasResultForVideo(
region_in_frame,
video_frame.get());
}
- scoped_callback_runner.Release();
+ ignore_result(scoped_callback_runner.Release());
callback.Run(true);
return;
}
@@ -1975,7 +1976,7 @@ void RenderWidgetHostViewAura::CopyFromCompositingSurfaceHasResultForVideo(
yuv_readback_pipeline = rwhva->yuv_readback_pipeline_.get();
}
- scoped_callback_runner.Release();
+ ignore_result(scoped_callback_runner.Release());
base::Callback<void(bool result)> finished_callback = base::Bind(
&CopyFromCompositingSurfaceFinishedForVideo,
callback,
diff --git a/content/browser/renderer_host/render_widget_host_view_mac.mm b/content/browser/renderer_host/render_widget_host_view_mac.mm
index e81d8cb..b74097a 100644
--- a/content/browser/renderer_host/render_widget_host_view_mac.mm
+++ b/content/browser/renderer_host/render_widget_host_view_mac.mm
@@ -7,8 +7,9 @@
#import <objc/runtime.h>
#include <QuartzCore/QuartzCore.h>
+#include "base/basictypes.h"
#include "base/bind.h"
-#include "base/bind_helpers.h"
+#include "base/callback_helpers.h"
#include "base/command_line.h"
#include "base/debug/crash_logging.h"
#include "base/debug/trace_event.h"
@@ -1161,7 +1162,7 @@ void RenderWidgetHostViewMac::CopyFromCompositingSurface(
gfx::Size dst_pixel_size = gfx::ToFlooredSize(
gfx::ScaleSize(dst_size, scale));
- scoped_callback_runner.Release();
+ ignore_result(scoped_callback_runner.Release());
compositing_iosurface_->CopyTo(GetScaledOpenGLPixelRect(src_subrect),
dst_pixel_size,
@@ -1192,7 +1193,7 @@ void RenderWidgetHostViewMac::CopyFromCompositingSurfaceToVideoFrame(
if (src_subrect.IsEmpty())
return;
- scoped_callback_runner.Release();
+ ignore_result(scoped_callback_runner.Release());
compositing_iosurface_->CopyToVideoFrame(
GetScaledOpenGLPixelRect(src_subrect),
target,
diff --git a/content/browser/renderer_host/render_widget_host_view_win.cc b/content/browser/renderer_host/render_widget_host_view_win.cc
index 150ce4e..ee6bf93 100644
--- a/content/browser/renderer_host/render_widget_host_view_win.cc
+++ b/content/browser/renderer_host/render_widget_host_view_win.cc
@@ -12,8 +12,9 @@
#include <map>
#include <stack>
+#include "base/basictypes.h"
#include "base/bind.h"
-#include "base/bind_helpers.h"
+#include "base/callback_helpers.h"
#include "base/command_line.h"
#include "base/debug/trace_event.h"
#include "base/i18n/rtl.h"
@@ -885,7 +886,7 @@ void RenderWidgetHostViewWin::CopyFromCompositingSurface(
if (dst_size.IsEmpty() || src_subrect.IsEmpty())
return;
- scoped_callback_runner.Release();
+ ignore_result(scoped_callback_runner.Release());
accelerated_surface_->AsyncCopyTo(src_subrect, dst_size, callback);
}
@@ -904,7 +905,7 @@ void RenderWidgetHostViewWin::CopyFromCompositingSurfaceToVideoFrame(
if (src_subrect.IsEmpty())
return;
- scoped_callback_runner.Release();
+ ignore_result(scoped_callback_runner.Release());
accelerated_surface_->AsyncCopyToVideoFrame(src_subrect, target, callback);
}
diff --git a/content/common/sandbox_linux.cc b/content/common/sandbox_linux.cc
index 1746390..c2b3aad 100644
--- a/content/common/sandbox_linux.cc
+++ b/content/common/sandbox_linux.cc
@@ -11,7 +11,7 @@
#include <limits>
#include "base/bind.h"
-#include "base/bind_helpers.h"
+#include "base/callback_helpers.h"
#include "base/command_line.h"
#include "base/logging.h"
#include "base/memory/singleton.h"
diff --git a/net/cert/cert_verify_proc_unittest.cc b/net/cert/cert_verify_proc_unittest.cc
index 8890e3b..2f3afe0 100644
--- a/net/cert/cert_verify_proc_unittest.cc
+++ b/net/cert/cert_verify_proc_unittest.cc
@@ -6,6 +6,7 @@
#include <vector>
+#include "base/callback_helpers.h"
#include "base/files/file_path.h"
#include "base/logging.h"
#include "base/sha1.h"
diff --git a/remoting/client/rectangle_update_decoder.cc b/remoting/client/rectangle_update_decoder.cc
index 3e93446..741357d 100644
--- a/remoting/client/rectangle_update_decoder.cc
+++ b/remoting/client/rectangle_update_decoder.cc
@@ -5,8 +5,8 @@
#include "remoting/client/rectangle_update_decoder.h"
#include "base/bind.h"
-#include "base/bind_helpers.h"
#include "base/callback.h"
+#include "base/callback_helpers.h"
#include "base/location.h"
#include "base/logging.h"
#include "base/single_thread_task_runner.h"
diff --git a/remoting/protocol/client_control_dispatcher.cc b/remoting/protocol/client_control_dispatcher.cc
index a42c3f6..76376e2 100644
--- a/remoting/protocol/client_control_dispatcher.cc
+++ b/remoting/protocol/client_control_dispatcher.cc
@@ -6,6 +6,7 @@
#include "base/bind_helpers.h"
#include "base/callback.h"
+#include "base/callback_helpers.h"
#include "base/message_loop/message_loop_proxy.h"
#include "net/socket/stream_socket.h"
#include "remoting/base/constants.h"
diff --git a/remoting/protocol/host_control_dispatcher.cc b/remoting/protocol/host_control_dispatcher.cc
index 26f09fc..671c801 100644
--- a/remoting/protocol/host_control_dispatcher.cc
+++ b/remoting/protocol/host_control_dispatcher.cc
@@ -4,6 +4,7 @@
#include "remoting/protocol/host_control_dispatcher.h"
+#include "base/callback_helpers.h"
#include "base/message_loop/message_loop_proxy.h"
#include "net/socket/stream_socket.h"
#include "remoting/base/constants.h"
diff --git a/remoting/protocol/host_event_dispatcher.cc b/remoting/protocol/host_event_dispatcher.cc
index f589e0d..c5206f4 100644
--- a/remoting/protocol/host_event_dispatcher.cc
+++ b/remoting/protocol/host_event_dispatcher.cc
@@ -4,7 +4,7 @@
#include "remoting/protocol/host_event_dispatcher.h"
-#include "base/bind_helpers.h"
+#include "base/callback_helpers.h"
#include "net/socket/stream_socket.h"
#include "remoting/base/constants.h"
#include "remoting/proto/event.pb.h"
diff --git a/tools/android/forwarder2/device_controller.cc b/tools/android/forwarder2/device_controller.cc
index 87d0e17..a6d370b 100644
--- a/tools/android/forwarder2/device_controller.cc
+++ b/tools/android/forwarder2/device_controller.cc
@@ -7,7 +7,7 @@
#include <utility>
#include "base/bind.h"
-#include "base/bind_helpers.h"
+#include "base/callback_helpers.h"
#include "base/logging.h"
#include "base/memory/scoped_ptr.h"
#include "base/message_loop/message_loop_proxy.h"
diff --git a/tools/android/memdump/memdump.cc b/tools/android/memdump/memdump.cc
index 26035b2..42ade35 100644
--- a/tools/android/memdump/memdump.cc
+++ b/tools/android/memdump/memdump.cc
@@ -19,7 +19,7 @@
#include "base/base64.h"
#include "base/basictypes.h"
#include "base/bind.h"
-#include "base/bind_helpers.h"
+#include "base/callback_helpers.h"
#include "base/containers/hash_tables.h"
#include "base/file_util.h"
#include "base/logging.h"
diff --git a/ui/surface/accelerated_surface_win.cc b/ui/surface/accelerated_surface_win.cc
index 74ebdac..2ec6382 100644
--- a/ui/surface/accelerated_surface_win.cc
+++ b/ui/surface/accelerated_surface_win.cc
@@ -8,8 +8,8 @@
#include <algorithm>
#include "base/bind.h"
-#include "base/bind_helpers.h"
#include "base/callback.h"
+#include "base/callback_helpers.h"
#include "base/command_line.h"
#include "base/debug/trace_event.h"
#include "base/files/file_path.h"