| Index: Source/modules/mediastream/RTCDTMFSender.cpp
|
| diff --git a/Source/modules/mediastream/RTCDTMFSender.cpp b/Source/modules/mediastream/RTCDTMFSender.cpp
|
| index 108599f52c5c4ef059bac21fdd062d5b77df2f66..b8a213da05cbe2715ff1d1a700e63bbd00f8260c 100644
|
| --- a/Source/modules/mediastream/RTCDTMFSender.cpp
|
| +++ b/Source/modules/mediastream/RTCDTMFSender.cpp
|
| @@ -38,27 +38,29 @@
|
|
|
| namespace WebCore {
|
|
|
| +DEFINE_GC_INFO(RTCDTMFSender);
|
| +
|
| static const long minToneDurationMs = 70;
|
| static const long defaultToneDurationMs = 100;
|
| static const long maxToneDurationMs = 6000;
|
| static const long minInterToneGapMs = 50;
|
| static const long defaultInterToneGapMs = 50;
|
|
|
| -PassRefPtr<RTCDTMFSender> RTCDTMFSender::create(ExecutionContext* context, blink::WebRTCPeerConnectionHandler* peerConnectionHandler, PassRefPtr<MediaStreamTrack> prpTrack, ExceptionState& exceptionState)
|
| +PassRefPtrWillBeRawPtr<RTCDTMFSender> RTCDTMFSender::create(ExecutionContext* context, blink::WebRTCPeerConnectionHandler* peerConnectionHandler, PassRefPtrWillBeRawPtr<MediaStreamTrack> prpTrack, ExceptionState& exceptionState)
|
| {
|
| - RefPtr<MediaStreamTrack> track = prpTrack;
|
| + RefPtrWillBeRawPtr<MediaStreamTrack> track = prpTrack;
|
| OwnPtr<blink::WebRTCDTMFSenderHandler> handler = adoptPtr(peerConnectionHandler->createDTMFSender(track->component()));
|
| if (!handler) {
|
| exceptionState.throwDOMException(NotSupportedError, "The MediaStreamTrack provided is not an element of a MediaStream that's currently in the local streams set.");
|
| return nullptr;
|
| }
|
|
|
| - RefPtr<RTCDTMFSender> dtmfSender = adoptRef(new RTCDTMFSender(context, track, handler.release()));
|
| + RefPtrWillBeRawPtr<RTCDTMFSender> dtmfSender = adoptRefCountedWillBeRefCountedGarbageCollected(new RTCDTMFSender(context, track, handler.release()));
|
| dtmfSender->suspendIfNeeded();
|
| return dtmfSender.release();
|
| }
|
|
|
| -RTCDTMFSender::RTCDTMFSender(ExecutionContext* context, PassRefPtr<MediaStreamTrack> track, PassOwnPtr<blink::WebRTCDTMFSenderHandler> handler)
|
| +RTCDTMFSender::RTCDTMFSender(ExecutionContext* context, PassRefPtrWillBeRawPtr<MediaStreamTrack> track, PassOwnPtr<blink::WebRTCDTMFSenderHandler> handler)
|
| : ActiveDOMObject(context)
|
| , m_track(track)
|
| , m_duration(defaultToneDurationMs)
|
| @@ -166,4 +168,9 @@ void RTCDTMFSender::scheduledEventTimerFired(Timer<RTCDTMFSender>*)
|
| dispatchEvent((*it).release());
|
| }
|
|
|
| +void RTCDTMFSender::trace(Visitor* visitor)
|
| +{
|
| + visitor->trace(m_track);
|
| +}
|
| +
|
| } // namespace WebCore
|
|
|