Index: base/callback_internal.cc |
diff --git a/base/callback_internal.cc b/base/callback_internal.cc |
index a483293257e445224c6c6148bc8e7c5a6ff2db58..65fe710a20c7ff25ae041d46c11fdb711277c2ff 100644 |
--- a/base/callback_internal.cc |
+++ b/base/callback_internal.cc |
@@ -14,8 +14,10 @@ bool CallbackBase::is_null() const { |
} |
void CallbackBase::Reset() { |
- bind_state_ = NULL; |
polymorphic_invoke_ = NULL; |
+ // NULL the bind_state_ last, since it may be holding the last ref to whatever |
+ // object owns us, and we may be deleted after that. |
+ bind_state_ = NULL; |
} |
bool CallbackBase::Equals(const CallbackBase& other) const { |