Title: [165858] trunk/Source/WebCore
Revision
165858
Author
[email protected]
Date
2014-03-18 17:28:29 -0700 (Tue, 18 Mar 2014)

Log Message

[WebRTC] Fix layering violation in RTCStatsRequest
https://bugs.webkit.org/show_bug.cgi?id=130426

Reviewed by Eric Carlson.

RTCStatsRequest::track() should return a MediaStreamTrackPrivate*.

No new tests needed.

* Modules/mediastream/RTCPeerConnection.cpp:
(WebCore::RTCPeerConnection::getStats):
* Modules/mediastream/RTCStatsRequestImpl.cpp:
(WebCore::RTCStatsRequestImpl::create):
(WebCore::RTCStatsRequestImpl::RTCStatsRequestImpl):
(WebCore::RTCStatsRequestImpl::track):
* Modules/mediastream/RTCStatsRequestImpl.h:
* platform/mediastream/RTCStatsRequest.h:

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (165857 => 165858)


--- trunk/Source/WebCore/ChangeLog	2014-03-19 00:01:41 UTC (rev 165857)
+++ trunk/Source/WebCore/ChangeLog	2014-03-19 00:28:29 UTC (rev 165858)
@@ -1,3 +1,23 @@
+2014-03-18  Thiago de Barros Lacerda  <[email protected]>
+
+        [WebRTC] Fix layering violation in RTCStatsRequest
+        https://bugs.webkit.org/show_bug.cgi?id=130426
+
+        Reviewed by Eric Carlson.
+
+        RTCStatsRequest::track() should return a MediaStreamTrackPrivate*.
+
+        No new tests needed.
+
+        * Modules/mediastream/RTCPeerConnection.cpp:
+        (WebCore::RTCPeerConnection::getStats):
+        * Modules/mediastream/RTCStatsRequestImpl.cpp:
+        (WebCore::RTCStatsRequestImpl::create):
+        (WebCore::RTCStatsRequestImpl::RTCStatsRequestImpl):
+        (WebCore::RTCStatsRequestImpl::track):
+        * Modules/mediastream/RTCStatsRequestImpl.h:
+        * platform/mediastream/RTCStatsRequest.h:
+
 2014-03-18  Anders Carlsson  <[email protected]>
 
         Fix a trivial FIXME

Modified: trunk/Source/WebCore/Modules/mediastream/RTCPeerConnection.cpp (165857 => 165858)


--- trunk/Source/WebCore/Modules/mediastream/RTCPeerConnection.cpp	2014-03-19 00:01:41 UTC (rev 165857)
+++ trunk/Source/WebCore/Modules/mediastream/RTCPeerConnection.cpp	2014-03-19 00:28:29 UTC (rev 165858)
@@ -529,7 +529,7 @@
 
 void RTCPeerConnection::getStats(PassRefPtr<RTCStatsCallback> successCallback, PassRefPtr<RTCPeerConnectionErrorCallback> errorCallback, PassRefPtr<MediaStreamTrack> selector)
 {
-    RefPtr<RTCStatsRequestImpl> statsRequest = RTCStatsRequestImpl::create(scriptExecutionContext(), successCallback, errorCallback, selector);
+    RefPtr<RTCStatsRequestImpl> statsRequest = RTCStatsRequestImpl::create(scriptExecutionContext(), successCallback, errorCallback, &selector->privateTrack());
     // FIXME: Add passing selector as part of the statsRequest.
     m_peerHandler->getStats(statsRequest.release());
 }

Modified: trunk/Source/WebCore/Modules/mediastream/RTCStatsRequestImpl.cpp (165857 => 165858)


--- trunk/Source/WebCore/Modules/mediastream/RTCStatsRequestImpl.cpp	2014-03-19 00:01:41 UTC (rev 165857)
+++ trunk/Source/WebCore/Modules/mediastream/RTCStatsRequestImpl.cpp	2014-03-19 00:28:29 UTC (rev 165858)
@@ -36,14 +36,14 @@
 
 namespace WebCore {
 
-PassRefPtr<RTCStatsRequestImpl> RTCStatsRequestImpl::create(ScriptExecutionContext* context, PassRefPtr<RTCStatsCallback> successCallback, PassRefPtr<RTCPeerConnectionErrorCallback> errorCallback, PassRefPtr<MediaStreamTrack> selector)
+PassRefPtr<RTCStatsRequestImpl> RTCStatsRequestImpl::create(ScriptExecutionContext* context, PassRefPtr<RTCStatsCallback> successCallback, PassRefPtr<RTCPeerConnectionErrorCallback> errorCallback, PassRefPtr<MediaStreamTrackPrivate> selector)
 {
     RefPtr<RTCStatsRequestImpl> request = adoptRef(new RTCStatsRequestImpl(context, successCallback, errorCallback, selector));
     request->suspendIfNeeded();
     return request.release();
 }
 
-RTCStatsRequestImpl::RTCStatsRequestImpl(ScriptExecutionContext* context, PassRefPtr<RTCStatsCallback> successCallback, PassRefPtr<RTCPeerConnectionErrorCallback> errorCallback, PassRefPtr<MediaStreamTrack> selector)
+RTCStatsRequestImpl::RTCStatsRequestImpl(ScriptExecutionContext* context, PassRefPtr<RTCStatsCallback> successCallback, PassRefPtr<RTCPeerConnectionErrorCallback> errorCallback, PassRefPtr<MediaStreamTrackPrivate> selector)
     : ActiveDOMObject(context)
     , m_successCallback(successCallback)
     , m_errorCallback(errorCallback)
@@ -65,7 +65,7 @@
     return m_track;
 }
 
-MediaStreamTrack* RTCStatsRequestImpl::track()
+MediaStreamTrackPrivate* RTCStatsRequestImpl::track()
 {
     return m_track.get();
 }

Modified: trunk/Source/WebCore/Modules/mediastream/RTCStatsRequestImpl.h (165857 => 165858)


--- trunk/Source/WebCore/Modules/mediastream/RTCStatsRequestImpl.h	2014-03-19 00:01:41 UTC (rev 165857)
+++ trunk/Source/WebCore/Modules/mediastream/RTCStatsRequestImpl.h	2014-03-19 00:28:29 UTC (rev 165858)
@@ -41,12 +41,12 @@
 
 class RTCStatsRequestImpl : public RTCStatsRequest, public ActiveDOMObject {
 public:
-    static PassRefPtr<RTCStatsRequestImpl> create(ScriptExecutionContext*, PassRefPtr<RTCStatsCallback>, PassRefPtr<RTCPeerConnectionErrorCallback>, PassRefPtr<MediaStreamTrack>);
+    static PassRefPtr<RTCStatsRequestImpl> create(ScriptExecutionContext*, PassRefPtr<RTCStatsCallback>, PassRefPtr<RTCPeerConnectionErrorCallback>, PassRefPtr<MediaStreamTrackPrivate>);
     virtual ~RTCStatsRequestImpl();
 
     virtual PassRefPtr<RTCStatsResponseBase> createResponse() override;
     virtual bool hasSelector() override;
-    virtual MediaStreamTrack* track() override;
+    virtual MediaStreamTrackPrivate* track() override;
 
     virtual void requestSucceeded(PassRefPtr<RTCStatsResponseBase>) override;
     virtual void requestFailed(const String&) override;
@@ -55,13 +55,13 @@
     virtual void stop() override;
 
 private:
-    RTCStatsRequestImpl(ScriptExecutionContext*, PassRefPtr<RTCStatsCallback>, PassRefPtr<RTCPeerConnectionErrorCallback>, PassRefPtr<MediaStreamTrack>);
+    RTCStatsRequestImpl(ScriptExecutionContext*, PassRefPtr<RTCStatsCallback>, PassRefPtr<RTCPeerConnectionErrorCallback>, PassRefPtr<MediaStreamTrackPrivate>);
 
     void clear();
 
     RefPtr<RTCStatsCallback> m_successCallback;
     RefPtr<RTCPeerConnectionErrorCallback> m_errorCallback;
-    RefPtr<MediaStreamTrack> m_track;
+    RefPtr<MediaStreamTrackPrivate> m_track;
 };
 
 } // namespace WebCore

Modified: trunk/Source/WebCore/platform/mediastream/RTCStatsRequest.h (165857 => 165858)


--- trunk/Source/WebCore/platform/mediastream/RTCStatsRequest.h	2014-03-19 00:01:41 UTC (rev 165857)
+++ trunk/Source/WebCore/platform/mediastream/RTCStatsRequest.h	2014-03-19 00:28:29 UTC (rev 165858)
@@ -39,7 +39,7 @@
 
 namespace WebCore {
 
-class MediaStreamTrack;
+class MediaStreamTrackPrivate;
 class RTCStatsResponseBase;
 
 class RTCStatsRequest : public RefCounted<RTCStatsRequest> {
@@ -48,7 +48,7 @@
 
     virtual PassRefPtr<RTCStatsResponseBase> createResponse() = 0;
     virtual bool hasSelector() = 0;
-    virtual MediaStreamTrack* track() = 0;
+    virtual MediaStreamTrackPrivate* track() = 0;
     virtual void requestSucceeded(PassRefPtr<RTCStatsResponseBase>) = 0;
     virtual void requestFailed(const String&) = 0;
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to