| Index: base/callback_internal.cc
|
| diff --git a/base/callback_internal.cc b/base/callback_internal.cc
|
| index 3a665d28cae8fc6d5280acad88313de0a8a8ec41..5a83bfa50ec3369c622efa6f1d305af4355a7c61 100644
|
| --- a/base/callback_internal.cc
|
| +++ b/base/callback_internal.cc
|
| @@ -29,7 +29,8 @@ BindStateBase::BindStateBase(InvokeFuncStorage polymorphic_invoke,
|
| BindStateBase::BindStateBase(InvokeFuncStorage polymorphic_invoke,
|
| void (*destructor)(const BindStateBase*),
|
| bool (*is_cancelled)(const BindStateBase*))
|
| - : polymorphic_invoke_(polymorphic_invoke),
|
| + : RefCountedThreadSafe(1 /* initial_ref_count */),
|
| + polymorphic_invoke_(polymorphic_invoke),
|
| destructor_(destructor),
|
| is_cancelled_(is_cancelled) {}
|
|
|
| @@ -74,9 +75,8 @@ bool CallbackBase<CopyMode::MoveOnly>::EqualsInternal(
|
| return bind_state_ == other.bind_state_;
|
| }
|
|
|
| -CallbackBase<CopyMode::MoveOnly>::CallbackBase(
|
| - BindStateBase* bind_state)
|
| - : bind_state_(bind_state) {
|
| +CallbackBase<CopyMode::MoveOnly>::CallbackBase(BindStateBase* bind_state)
|
| + : bind_state_(AdoptRef(bind_state)) {
|
| DCHECK(!bind_state_.get() || bind_state_->HasOneRef());
|
| }
|
|
|
|
|