Stop using JSImpl for RTCRtpReceiver
Categories
(Core :: WebRTC: Signaling, task, P2)
Tracking
()
Tracking | Status | |
---|---|---|
firefox76 | --- | fixed |
People
(Reporter: bwc, Assigned: bwc)
References
Details
Attachments
(9 files, 2 obsolete files)
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review |
Assignee | ||
Comment 1•5 years ago
|
||
Assignee | ||
Comment 2•5 years ago
|
||
Assignee | ||
Comment 3•5 years ago
|
||
...code is being moved elsewhere.
Depends on D50395
Assignee | ||
Comment 4•5 years ago
|
||
Depends on D64234
Assignee | ||
Comment 5•5 years ago
|
||
Depends on D64235
Assignee | ||
Comment 6•5 years ago
|
||
Depends on D64237
Assignee | ||
Comment 7•5 years ago
|
||
Depends on D64238
Assignee | ||
Comment 8•5 years ago
|
||
Depends on D64240
Assignee | ||
Comment 9•5 years ago
|
||
Depends on D64241
Updated•5 years ago
|
Assignee | ||
Comment 10•5 years ago
|
||
Assignee | ||
Comment 11•5 years ago
|
||
Depends on D64237
Assignee | ||
Comment 12•5 years ago
|
||
This means we won't have to re-implement all of our JSImpl workarounds in c++.
Also, rename a variable in a way that made it easier to read this code.
Updated•5 years ago
|
Updated•5 years ago
|
Updated•5 years ago
|
Assignee | ||
Comment 13•5 years ago
|
||
Assignee | ||
Comment 14•5 years ago
|
||
Basic try run looks good. Going to push a more thorough one now.
Assignee | ||
Comment 15•5 years ago
|
||
Assignee | ||
Comment 16•5 years ago
|
||
This essentially implements the "queue a task" step required by the spec, which
ensures that if JS checks stats multiple times without relinquishing the event
loop, it will see the same thing each time.
Depends on D64241
Updated•5 years ago
|
Assignee | ||
Comment 17•5 years ago
|
||
Assignee | ||
Comment 18•5 years ago
|
||
Try push in comment 17 looks fine, here's a more thorough push:
https://treeherder.mozilla.org/#/jobs?repo=try&revision=e998a42a0b6f0cab9fb8ed89d4f3798c5306716f
Assignee | ||
Comment 19•5 years ago
|
||
Depends on D64468
Assignee | ||
Comment 20•5 years ago
|
||
Assignee | ||
Comment 21•5 years ago
|
||
Try push looks fine.
Assignee | ||
Comment 22•5 years ago
|
||
Assignee | ||
Comment 23•5 years ago
•
|
||
Assignee | ||
Comment 24•5 years ago
•
|
||
Assignee | ||
Comment 25•5 years ago
|
||
Assignee | ||
Comment 26•5 years ago
•
|
||
Assignee | ||
Comment 27•5 years ago
|
||
Comment 28•5 years ago
|
||
Comment 29•5 years ago
|
||
Backed out 9 changesets (bug 1616875) for bustages complaining about RTCRtpReceiver.h
Backout link: https://hg.mozilla.org/integration/autoland/rev/5750de97b3d6ce38b64fe73ade10e29c5e71ca0c
Failure log: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=294063224&repo=autoland&lineNumber=22138
[task 2020-03-20T14:26:08.415Z] 14:26:08 INFO - make[4]: Leaving directory '/builds/worker/workspace/obj-build/dom/html'
[task 2020-03-20T14:26:09.224Z] 14:26:09 INFO - make[4]: Entering directory '/builds/worker/workspace/obj-build/dom/bindings'
[task 2020-03-20T14:26:09.224Z] 14:26:09 INFO - /builds/worker/fetches/sccache/sccache /builds/worker/fetches/clang/bin/clang++ -isysroot /builds/worker/checkouts/gecko/MacOSX10.11.sdk -std=gnu++17 --target=x86_64-apple-darwin -o UnifiedBindings16.o -c -fvisibility=hidden -fvisibility-inlines-hidden -U_FORTIFY_SOURCE -fno-common -DNDEBUG=1 -DTRIMMED=1 -DGOOGLE_PROTOBUF_NO_RTTI -DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER -DOS_POSIX=1 -DOS_MACOSX=1 -DHAVE_SIDEBAR -DMOZ_HAS_MOZGLUE -DMOZILLA_INTERNAL_API -DIMPL_LIBXUL -DSTATIC_EXPORTABLE_JS_API -I/builds/worker/checkouts/gecko/dom/bindings -I/builds/worker/workspace/obj-build/dom/bindings -I/builds/worker/workspace/obj-build/dist/include/mozilla/dom -I/builds/worker/checkouts/gecko/dom/base -I/builds/worker/checkouts/gecko/dom/battery -I/builds/worker/checkouts/gecko/dom/canvas -I/builds/worker/checkouts/gecko/dom/geolocation -I/builds/worker/checkouts/gecko/dom/html -I/builds/worker/checkouts/gecko/dom/indexedDB -I/builds/worker/checkouts/gecko/dom/media/webaudio -I/builds/worker/checkouts/gecko/dom/media/webspeech/recognition -I/builds/worker/checkouts/gecko/dom/svg -I/builds/worker/checkouts/gecko/dom/xml -I/builds/worker/checkouts/gecko/dom/xslt/base -I/builds/worker/checkouts/gecko/dom/xslt/xpath -I/builds/worker/checkouts/gecko/dom/xul -I/builds/worker/checkouts/gecko/js/xpconnect/src -I/builds/worker/checkouts/gecko/js/xpconnect/wrappers -I/builds/worker/checkouts/gecko/layout/generic -I/builds/worker/checkouts/gecko/layout/style -I/builds/worker/checkouts/gecko/layout/xul/tree -I/builds/worker/checkouts/gecko/media/mtransport -I/builds/worker/checkouts/gecko/media/webrtc -I/builds/worker/checkouts/gecko/media/webrtc/signaling/src/common/time_profiling -I/builds/worker/checkouts/gecko/media/webrtc/signaling/src/peerconnection -I/builds/worker/checkouts/gecko/media/webrtc/trunk -I/builds/worker/checkouts/gecko/netwerk/base -I/builds/worker/checkouts/gecko/third_party/msgpack/include -I/builds/worker/workspace/obj-build/ipc/ipdl/_ipdlheaders -I/builds/worker/checkouts/gecko/ipc/chromium/src -I/builds/worker/checkouts/gecko/ipc/glue -I/builds/worker/workspace/obj-build/dist/include -I/builds/worker/workspace/obj-build/dist/include/nspr -I/builds/worker/workspace/obj-build/dist/include/nss -fPIC -DMOZILLA_CLIENT -include /builds/worker/workspace/obj-build/mozilla-config.h -Qunused-arguments -Qunused-arguments -Wall -Wbitfield-enum-conversion -Wempty-body -Wignored-qualifiers -Woverloaded-virtual -Wpointer-arith -Wshadow-field-in-constructor-modified -Wsign-compare -Wtype-limits -Wunreachable-code -Wunreachable-code-return -Wwrite-strings -Wno-invalid-offsetof -Wclass-varargs -Wempty-init-stmt -Wfloat-overflow-conversion -Wfloat-zero-conversion -Wloop-analysis -Wc++2a-compat -Wcomma -Wimplicit-fallthrough -Wunused-function -Wunused-variable -Werror=non-literal-null-conversion -Wstring-conversion -Wtautological-overlap-compare -Wtautological-unsigned-enum-zero-compare -Wtautological-unsigned-zero-compare -Wno-error=tautological-type-limit-compare -Wno-inline-new-delete -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wno-error=backend-plugin -Wno-error=return-std-move -Wno-error=atomic-alignment -Wformat -Wformat-security -Wno-gnu-zero-variadic-macro-arguments -Wno-unknown-warning-option -fno-sized-deallocation -fno-aligned-new -fsanitize=address -fcrash-diagnostics-dir=/builds/worker/artifacts -fcrash-diagnostics-dir=/builds/worker/artifacts -fno-exceptions -fno-strict-aliasing -stdlib=libc++ -fno-rtti -ffunction-sections -fdata-sections -fno-exceptions -fno-math-errno -pthread -pipe -g -Xclang -load -Xclang /builds/worker/workspace/obj-build/build/clang-plugin/libclang-plugin.so -Xclang -add-plugin -Xclang moz-check -O2 -fno-omit-frame-pointer -funwind-tables -Werror -Wno-error=shadow -Wno-maybe-uninitialized -fexperimental-new-pass-manager -MD -MP -MF .deps/UnifiedBindings16.o.pp UnifiedBindings16.cpp
[task 2020-03-20T14:26:09.224Z] 14:26:09 INFO - In file included from UnifiedBindings16.cpp:2:
[task 2020-03-20T14:26:09.224Z] 14:26:09 INFO - In file included from /builds/worker/workspace/obj-build/dom/bindings/RTCRtpReceiverBinding.cpp:3:
[task 2020-03-20T14:26:09.224Z] 14:26:09 ERROR - /builds/worker/checkouts/gecko/media/webrtc/signaling/src/peerconnection/RTCRtpReceiver.h:81:30: error: implicit instantiation of undefined template 'std::__1::vector<std::__1::basic_string<char>, std::__1::allocator<std::__1::basic_string<char> > >'
[task 2020-03-20T14:26:09.224Z] 14:26:09 INFO - std::vector<std::string> mStreamIds;
[task 2020-03-20T14:26:09.224Z] 14:26:09 INFO - ^
[task 2020-03-20T14:26:09.224Z] 14:26:09 INFO - /builds/worker/fetches/clang/bin/../include/c++/v1/iosfwd:216:28: note: template is declared here
[task 2020-03-20T14:26:09.224Z] 14:26:09 INFO - class _LIBCPP_TEMPLATE_VIS vector;
[task 2020-03-20T14:26:09.224Z] 14:26:09 INFO - ^
[task 2020-03-20T14:26:09.224Z] 14:26:09 INFO - In file included from UnifiedBindings16.cpp:2:
[task 2020-03-20T14:26:09.224Z] 14:26:09 INFO - In file included from /builds/worker/workspace/obj-build/dom/bindings/RTCRtpReceiverBinding.cpp:3:
[task 2020-03-20T14:26:09.224Z] 14:26:09 ERROR - /builds/worker/checkouts/gecko/media/webrtc/signaling/src/peerconnection/RTCRtpReceiver.h:85:43: error: implicit instantiation of undefined template 'std::__1::vector<RefPtr<mozilla::dom::MediaStreamTrack>, std::__1::allocator<RefPtr<mozilla::dom::MediaStreamTrack> > >'
[task 2020-03-20T14:26:09.224Z] 14:26:09 INFO - std::vector<RefPtr<MediaStreamTrack>> mTracksToMute;
[task 2020-03-20T14:26:09.224Z] 14:26:09 INFO - ^
[task 2020-03-20T14:26:09.224Z] 14:26:09 INFO - /builds/worker/fetches/clang/bin/../include/c++/v1/iosfwd:216:28: note: template is declared here
[task 2020-03-20T14:26:09.224Z] 14:26:09 INFO - class _LIBCPP_TEMPLATE_VIS vector;
[task 2020-03-20T14:26:09.224Z] 14:26:09 INFO - ^
[task 2020-03-20T14:26:09.224Z] 14:26:09 INFO - In file included from UnifiedBindings16.cpp:2:
[task 2020-03-20T14:26:09.224Z] 14:26:09 INFO - In file included from /builds/worker/workspace/obj-build/dom/bindings/RTCRtpReceiverBinding.cpp:3:
[task 2020-03-20T14:26:09.224Z] 14:26:09 ERROR - /builds/worker/checkouts/gecko/media/webrtc/signaling/src/peerconnection/RTCRtpReceiver.h:86:36: error: implicit instantiation of undefined template 'std::__1::vector<mozilla::dom::RTCRtpReceiver::StreamAssociation, std::__1::allocator<mozilla::dom::RTCRtpReceiver::StreamAssociation> >'
[task 2020-03-20T14:26:09.224Z] 14:26:09 INFO - std::vector<StreamAssociation> mStreamAssociationsRemoved;
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - ^
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - /builds/worker/fetches/clang/bin/../include/c++/v1/iosfwd:216:28: note: template is declared here
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - class _LIBCPP_TEMPLATE_VIS vector;
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - ^
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - In file included from UnifiedBindings16.cpp:2:
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - In file included from /builds/worker/workspace/obj-build/dom/bindings/RTCRtpReceiverBinding.cpp:3:
[task 2020-03-20T14:26:09.225Z] 14:26:09 ERROR - /builds/worker/checkouts/gecko/media/webrtc/signaling/src/peerconnection/RTCRtpReceiver.h:87:36: error: implicit instantiation of undefined template 'std::__1::vector<mozilla::dom::RTCRtpReceiver::StreamAssociation, std::__1::allocator<mozilla::dom::RTCRtpReceiver::StreamAssociation> >'
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - std::vector<StreamAssociation> mStreamAssociationsAdded;
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO -
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - /builds/worker/fetches/clang/bin/../include/c++/v1/iosfwd:216:28: note: template is declared here
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - class _LIBCPP_TEMPLATE_VIS vector;
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - ^
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - In file included from UnifiedBindings16.cpp:2:
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - In file included from /builds/worker/workspace/obj-build/dom/bindings/RTCRtpReceiverBinding.cpp:3:
[task 2020-03-20T14:26:09.225Z] 14:26:09 ERROR - /builds/worker/checkouts/gecko/media/webrtc/signaling/src/peerconnection/RTCRtpReceiver.h:88:33: error: implicit instantiation of undefined template 'std::__1::vector<mozilla::dom::RTCRtpReceiver::TrackEventInfo, std::__1::allocator<mozilla::dom::RTCRtpReceiver::TrackEventInfo> >'
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - std::vector<TrackEventInfo> mTrackEvents;
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - ^
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - /builds/worker/fetches/clang/bin/../include/c++/v1/iosfwd:216:28: note: template is declared here
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - class _LIBCPP_TEMPLATE_VIS vector;
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - ^
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - In file included from UnifiedBindings16.cpp:2:
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - In file included from /builds/worker/workspace/obj-build/dom/bindings/RTCRtpReceiverBinding.cpp:3:
[task 2020-03-20T14:26:09.225Z] 14:26:09 ERROR - /builds/worker/checkouts/gecko/media/webrtc/signaling/src/peerconnection/RTCRtpReceiver.h:126:28: error: implicit instantiation of undefined template 'std::__1::vector<std::__1::basic_string<char>, std::__1::allocator<std::__1::basic_string<char> > >'
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - std::vector<std::string> mStreamIds;
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - ^
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - /builds/worker/fetches/clang/bin/../include/c++/v1/iosfwd:216:28: note: template is declared here
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - class _LIBCPP_TEMPLATE_VIS vector;
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - ^
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - In file included from UnifiedBindings16.cpp:2:
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - In file included from /builds/worker/workspace/obj-build/dom/bindings/RTCRtpReceiverBinding.cpp:3:
[task 2020-03-20T14:26:09.225Z] 14:26:09 ERROR - /builds/worker/checkouts/gecko/media/webrtc/signaling/src/peerconnection/RTCRtpReceiver.h:46:3: error: static_cast from 'mozilla::dom::RTCRtpReceiver *' to 'nsISupports *', which are not related by inheritance, is not allowed
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(RTCRtpReceiver)
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - /builds/worker/workspace/obj-build/dist/include/nsCycleCollectionParticipant.h:711:3: note: expanded from macro 'NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS'
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS_AMBIGUOUS(_class, _class)
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - /builds/worker/workspace/obj-build/dist/include/nsCycleCollectionParticipant.h:652:5: note: expanded from macro 'NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS_AMBIGUOUS'
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - NS_DECL_CYCLE_COLLECTION_CLASS_BODY(_class, _base) \
[task 2020-03-20T14:26:09.225Z] 14:26:09 INFO - ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[task 2020-03-20T14:26:09.228Z] 14:26:09 INFO - /builds/worker/workspace/obj-build/dist/include/nsCycleCollectionParticipant.h:575:3: note: expanded from macro 'NS_DECL_CYCLE_COLLECTION_CLASS_BODY'
[task 2020-03-20T14:26:09.228Z] 14:26:09 INFO - NS_DECL_CYCLE_COLLECTION_CLASS_BODY_NO_UNLINK(_class, _base) \
...
...
Assignee | ||
Comment 30•5 years ago
|
||
Assignee | ||
Updated•5 years ago
|
Comment 31•5 years ago
|
||
Comment 32•5 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/2a7226c3a2dc
https://hg.mozilla.org/mozilla-central/rev/bd5d9537f2fc
https://hg.mozilla.org/mozilla-central/rev/459e8e135ca8
https://hg.mozilla.org/mozilla-central/rev/72026115ce3e
https://hg.mozilla.org/mozilla-central/rev/f019798505f7
https://hg.mozilla.org/mozilla-central/rev/ebc3e7947795
https://hg.mozilla.org/mozilla-central/rev/e236eb4ef120
https://hg.mozilla.org/mozilla-central/rev/db952796534a
https://hg.mozilla.org/mozilla-central/rev/6ed285183b09
Description
•