summaryrefslogtreecommitdiff
path: root/www-client/chromium/files/chromium-80-gcc-abstract.patch
diff options
context:
space:
mode:
Diffstat (limited to 'www-client/chromium/files/chromium-80-gcc-abstract.patch')
-rw-r--r--www-client/chromium/files/chromium-80-gcc-abstract.patch41
1 files changed, 41 insertions, 0 deletions
diff --git a/www-client/chromium/files/chromium-80-gcc-abstract.patch b/www-client/chromium/files/chromium-80-gcc-abstract.patch
new file mode 100644
index 000000000000..190a67258e1d
--- /dev/null
+++ b/www-client/chromium/files/chromium-80-gcc-abstract.patch
@@ -0,0 +1,41 @@
+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);
+ };
+