You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
chromium/chromium-80-gcc-abstract.patch

42 lines
3.1 KiB

5 years ago
In file included from ../../third_party/blink/renderer/platform/heap/persistent.h:18,
from ../../third_party/blink/public/platform/web_private_ptr.h:40,
from ../../third_party/blink/public/platform/web_media_stream_track.h:33,
from ../../third_party/blink/public/platform/web_media_stream_source.h:37,
from ../../third_party/blink/renderer/modules/peerconnection/rtc_peer_connection_handler.h:19,
from ../../third_party/blink/renderer/modules/peerconnection/rtc_peer_connection_handler.cc:5:
../../third_party/blink/renderer/platform/wtf/cross_thread_copier.h: In instantiation of 'struct WTF::CrossThreadCopierPassThrough<webrtc::VideoTrackInterface>':
../../third_party/blink/renderer/modules/peerconnection/adapters/web_rtc_cross_thread_copier.h:169:14: required from here
../../third_party/blink/renderer/platform/wtf/cross_thread_copier.h:80:15: error: invalid abstract return type 'webrtc::VideoTrackInterface'
80 | static Type Copy(const T& parameter) { return parameter; }
| ^~~~
In file included from ../../third_party/webrtc/api/peer_connection_interface.h:88,
from ../../third_party/blink/public/platform/web_rtc_peer_connection_handler.h:39,
from ../../third_party/blink/renderer/modules/peerconnection/rtc_peer_connection_handler.h:20,
from ../../third_party/blink/renderer/modules/peerconnection/rtc_peer_connection_handler.cc:5:
../../third_party/webrtc/api/media_stream_interface.h:174:18: note: because the following virtual functions are pure within 'webrtc::VideoTrackInterface':
174 | class RTC_EXPORT VideoTrackInterface
| ^~~~~~~~~~~~~~~~~~~
../../third_party/webrtc/api/media_stream_interface.h:48:16: note: 'virtual void webrtc::NotifierInterface::RegisterObserver(webrtc::ObserverInterface*)'
48 | virtual void RegisterObserver(ObserverInterface* observer) = 0;
| ^~~~~~~~~~~~~~~~
../../third_party/webrtc/api/media_stream_interface.h:49:16: note: 'virtual void webrtc::NotifierInterface::UnregisterObserver(webrtc::ObserverInterface*)'
49 | virtual void UnregisterObserver(ObserverInterface* observer) = 0;
| ^~~~~~~~~~~~~~~~~~
diff --git a/third_party/blink/renderer/modules/peerconnection/adapters/web_rtc_cross_thread_copier.h b/third_party/blink/renderer/modules/peerconnection/adapters/web_rtc_cross_thread_copier.h
index 54cb7d1..0d6c40f 100644
--- a/third_party/blink/renderer/modules/peerconnection/adapters/web_rtc_cross_thread_copier.h
+++ b/third_party/blink/renderer/modules/peerconnection/adapters/web_rtc_cross_thread_copier.h
@@ -165,8 +165,9 @@ struct CrossThreadCopier<blink::MediaStreamVideoTrack>
};
template <>
-struct CrossThreadCopier<webrtc::VideoTrackInterface>
- : public CrossThreadCopierPassThrough<webrtc::VideoTrackInterface> {
+struct CrossThreadCopier<rtc::scoped_refptr<webrtc::VideoTrackInterface>>
+ : public CrossThreadCopierPassThrough<
+ rtc::scoped_refptr<webrtc::VideoTrackInterface>> {
STATIC_ONLY(CrossThreadCopier);
};