Index: chrome/browser/sync/js/js_mutation_event_observer.cc |
diff --git a/chrome/browser/sync/js/js_mutation_event_observer.cc b/chrome/browser/sync/js/js_mutation_event_observer.cc |
index 5087a23ad0c12548f29efecca3cfe3a4e8053b15..2c323d1e054028941ec11b5ba9d4f1a81a397721 100644 |
--- a/chrome/browser/sync/js/js_mutation_event_observer.cc |
+++ b/chrome/browser/sync/js/js_mutation_event_observer.cc |
@@ -15,12 +15,21 @@ |
namespace browser_sync { |
-JsMutationEventObserver::JsMutationEventObserver() {} |
+JsMutationEventObserver::JsMutationEventObserver() |
+ : weak_ptr_factory_(ALLOW_THIS_IN_INITIALIZER_LIST(this)) {} |
JsMutationEventObserver::~JsMutationEventObserver() { |
DCHECK(non_thread_safe_.CalledOnValidThread()); |
} |
+base::WeakPtr<JsMutationEventObserver> JsMutationEventObserver::AsWeakPtr() { |
+ return weak_ptr_factory_.GetWeakPtr(); |
+} |
+ |
+void JsMutationEventObserver::InvalidateWeakPtrs() { |
+ weak_ptr_factory_.InvalidateWeakPtrs(); |
+} |
+ |
void JsMutationEventObserver::SetJsEventHandler( |
const WeakHandle<JsEventHandler>& event_handler) { |
event_handler_ = event_handler; |