Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(826)

Unified Diff: third_party/WebKit/Source/modules/mediastream/RTCDTMFSender.cpp

Issue 1744133002: Reduce ActiveDOMObjects from modules/mediastream/ (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/modules/mediastream/RTCDTMFSender.cpp
diff --git a/third_party/WebKit/Source/modules/mediastream/RTCDTMFSender.cpp b/third_party/WebKit/Source/modules/mediastream/RTCDTMFSender.cpp
index a45f886eae28fbd24caaf0ee857454afb5f87c8b..ea8d03f9ffc506bc1d8ec8a26efc96355d538c68 100644
--- a/third_party/WebKit/Source/modules/mediastream/RTCDTMFSender.cpp
+++ b/third_party/WebKit/Source/modules/mediastream/RTCDTMFSender.cpp
@@ -51,18 +51,15 @@ RTCDTMFSender* RTCDTMFSender::create(ExecutionContext* context, WebRTCPeerConnec
return nullptr;
}
- RTCDTMFSender* dtmfSender = new RTCDTMFSender(context, track, handler.release());
- dtmfSender->suspendIfNeeded();
- return dtmfSender;
+ return new RTCDTMFSender(context, track, handler.release());
}
RTCDTMFSender::RTCDTMFSender(ExecutionContext* context, MediaStreamTrack* track, PassOwnPtr<WebRTCDTMFSenderHandler> handler)
- : ActiveDOMObject(context)
+ : ContextLifecycleObserver(context)
, m_track(track)
, m_duration(defaultToneDurationMs)
, m_interToneGap(defaultInterToneGapMs)
, m_handler(handler)
- , m_stopped(false)
, m_scheduledEventTimer(this, &RTCDTMFSender::scheduledEventTimerFired)
{
m_handler->setClient(this);
@@ -133,12 +130,11 @@ const AtomicString& RTCDTMFSender::interfaceName() const
ExecutionContext* RTCDTMFSender::executionContext() const
{
- return ActiveDOMObject::executionContext();
+ return ContextLifecycleObserver::executionContext();
}
-void RTCDTMFSender::stop()
+void RTCDTMFSender::contextDestroyed()
{
- m_stopped = true;
m_handler->setClient(0);
}
@@ -152,7 +148,7 @@ void RTCDTMFSender::scheduleDispatchEvent(PassRefPtrWillBeRawPtr<Event> event)
void RTCDTMFSender::scheduledEventTimerFired(Timer<RTCDTMFSender>*)
{
- if (m_stopped)
+ if (!executionContext())
return;
WillBeHeapVector<RefPtrWillBeMember<Event>> events;
@@ -168,7 +164,7 @@ DEFINE_TRACE(RTCDTMFSender)
visitor->trace(m_track);
visitor->trace(m_scheduledEvents);
RefCountedGarbageCollectedEventTargetWithInlineData<RTCDTMFSender>::trace(visitor);
- ActiveDOMObject::trace(visitor);
+ ContextLifecycleObserver::trace(visitor);
}
} // namespace blink

Powered by Google App Engine
This is Rietveld 408576698