| Index: base/bind_internal.h
|
| diff --git a/base/bind_internal.h b/base/bind_internal.h
|
| index 199467c5495197ae0f60827910f3681c8660e349..de14bfff0b4f1e77c88dfb2a53d70ee21137668e 100644
|
| --- a/base/bind_internal.h
|
| +++ b/base/bind_internal.h
|
| @@ -181,6 +181,11 @@ class RunnableAdapter<R(T::*)(Args...)> {
|
| return (object->*method_)(std::forward<RunArgs>(args)...);
|
| }
|
|
|
| + template <typename RefType, typename... RunArgs>
|
| + R Run(const scoped_refptr<RefType>& object, RunArgs&&... args) {
|
| + return (object.get()->*method_)(std::forward<RunArgs>(args)...);
|
| + }
|
| +
|
| private:
|
| R (T::*method_)(Args...);
|
| };
|
| @@ -201,6 +206,11 @@ class RunnableAdapter<R(T::*)(Args...) const> {
|
| return (object->*method_)(std::forward<RunArgs>(args)...);
|
| }
|
|
|
| + template <typename RefType, typename... RunArgs>
|
| + R Run(const scoped_refptr<RefType>& object, RunArgs&&... args) {
|
| + return (object.get()->*method_)(std::forward<RunArgs>(args)...);
|
| + }
|
| +
|
| private:
|
| R (T::*method_)(Args...) const;
|
| };
|
|
|