Closed Bug 1545090 Opened 4 months ago Closed 4 months ago

Assertion failure: !aTransportId.empty(), at /builds/worker/workspace/build/src/media/webrtc/signaling/src/peerconnection/PeerConnectionMedia.cpp:393

Categories

(Core :: WebRTC, defect, P2)

defect

Tracking

()

RESOLVED FIXED
mozilla68
Tracking Status
thunderbird_esr60 --- unaffected
geckoview66 --- unaffected
firefox-esr60 --- unaffected
firefox66 --- unaffected
firefox67 --- unaffected
firefox68 --- fixed

People

(Reporter: jkratzer, Assigned: bwc)

References

(Blocks 1 open bug, Regression)

Details

(Keywords: assertion, regression, testcase)

Attachments

(3 files)

Attached file testcase.html

Testcase found while fuzzing mozilla-central rev ec1f3a922d56.

Assertion failure: !aTransportId.empty(), at /builds/worker/workspace/build/src/media/webrtc/signaling/src/peerconnection/PeerConnectionMedia.cpp:393

rax = 0x0000561ed0731e20 rdx = 0x0000000000000000
rcx = 0x00007f0daf6c069b rbx = 0x00007f0da2910800
rsi = 0x00007f0dba90a8b0 rdi = 0x00007f0dba909680
rbp = 0x00007ffc2ed89210 rsp = 0x00007ffc2ed891b0
r8 = 0x00007f0dba90a8b0 r9 = 0x00007f0dbba8c740
r10 = 0x0000000000000002 r11 = 0x0000000000000000
r12 = 0x00007ffc2ed89288 r13 = 0x00007ffc2ed89280
r14 = 0x00007f0dae8f6d64 r15 = 0x00007ffc2ed89270
rip = 0x00007f0daa7431ed
OS|Linux|0.0.0 Linux 4.15.0-46-generic #49-Ubuntu SMP Wed Feb 6 09:33:07 UTC 2019 x86_64
CPU|amd64|family 6 model 60 stepping 3|1
GPU|||
Crash|SIGSEGV|0x0|0
0|0|libxul.so|mozilla::PeerConnectionMedia::AddIceCandidate(std::string const&, std::string const&, std::string const&)|hg:hg.mozilla.org/mozilla-central:media/webrtc/signaling/src/peerconnection/PeerConnectionMedia.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|393|0x33
0|1|libxul.so|mozilla::PeerConnectionImpl::AddIceCandidate(char const*, char const*, char const*, mozilla::dom::Nullable<unsigned short> const&)|hg:hg.mozilla.org/mozilla-central:media/webrtc/signaling/src/peerconnection/PeerConnectionImpl.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|1622|0x45
0|2|libxul.so|mozilla::dom::PeerConnectionImpl_Binding::addIceCandidate|s3:gecko-generated-sources:f554640989a313194a549d0785f3939c3ba768a4321101023aec4d2c6ac0e6d42094a6daa68d5a8e17045bb78efb28401c87c90bb40590fcdaac6e985d970961/dom/bindings/PeerConnectionImplBinding.cpp:|1159|0x90
0|3|libxul.so|bool mozilla::dom::binding_detail::GenericMethod<mozilla::dom::binding_detail::NormalThisPolicy, mozilla::dom::binding_detail::ThrowExceptions>(JSContext*, unsigned int, JS::Value*)|hg:hg.mozilla.org/mozilla-central:dom/bindings/BindingUtils.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|3153|0x24
0|4|libxul.so|CallJSNative(JSContext*, bool ()(JSContext, unsigned int, JS::Value*), JS::CallArgs const&)|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|442|0x13
0|5|libxul.so|js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct)|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|534|0x12
0|6|libxul.so|InternalCall|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|589|0xd
0|7|libxul.so|Interpret|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|593|0xf
0|8|libxul.so|js::RunScript(JSContext*, js::RunState&)|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|422|0xb
0|9|libxul.so|js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct)|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|562|0xf
0|10|libxul.so|InternalCall|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|589|0xd
0|11|libxul.so|js::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, js::AnyInvokeArgs const&, JS::MutableHandle<JS::Value>)|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|605|0x5
0|12|libxul.so|js::PromiseObject::create(JSContext*, JS::Handle<JSObject*>, JS::Handle<JSObject*>, bool)|hg:hg.mozilla.org/mozilla-central:js/src/builtin/Promise.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|2235|0x27
0|13|libxul.so|PromiseConstructor|hg:hg.mozilla.org/mozilla-central:js/src/builtin/Promise.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|2156|0x5
0|14|libxul.so|CallJSNative(JSContext*, bool ()(JSContext, unsigned int, JS::Value*), JS::CallArgs const&)|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|442|0x13
0|15|libxul.so|CallJSNativeConstructor(JSContext*, bool ()(JSContext, unsigned int, JS::Value*), JS::CallArgs const&)|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|458|0xf
0|16|libxul.so|InternalConstruct|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|632|0x10
0|17|libxul.so|Interpret|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|3063|0xf
0|18|libxul.so|js::RunScript(JSContext*, js::RunState&)|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|422|0xb
0|19|libxul.so|js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct)|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|562|0xf
0|20|libxul.so|InternalCall|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|589|0xd
0|21|libxul.so|js::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, js::AnyInvokeArgs const&, JS::MutableHandle<JS::Value>)|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|605|0x5
0|22|libxul.so|js::CallSelfHostedFunction(JSContext*, JS::Handle<js::PropertyName*>, JS::Handle<JS::Value>, js::AnyInvokeArgs const&, JS::MutableHandle<JS::Value>)|hg:hg.mozilla.org/mozilla-central:js/src/vm/SelfHosting.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|1943|0x17
0|23|libxul.so|js::jit::InterpretResume(JSContext*, JS::Handle<JSObject*>, JS::Handle<JS::Value>, JS::Handle<js::PropertyName*>, JS::MutableHandle<JS::Value>)|hg:hg.mozilla.org/mozilla-central:js/src/jit/VMFunctions.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|1004|0x5
0|24|||||0x2778de509fef
0|25|||||0x2778de4fdac4
0|26|libxul.so|EnterJit|hg:hg.mozilla.org/mozilla-central:js/src/jit/Jit.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|105|0x29
0|27|libxul.so|js::RunScript(JSContext*, js::RunState&)|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|407|0xb
0|28|libxul.so|js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct)|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|562|0xf
0|29|libxul.so|InternalCall|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|589|0xd
0|30|libxul.so|js::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, js::AnyInvokeArgs const&, JS::MutableHandle<JS::Value>)|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|605|0x5
0|31|libxul.so|js::CallSelfHostedFunction(JSContext*, JS::Handle<js::PropertyName*>, JS::Handle<JS::Value>, js::AnyInvokeArgs const&, JS::MutableHandle<JS::Value>)|hg:hg.mozilla.org/mozilla-central:js/src/vm/SelfHosting.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|1943|0x17
0|32|libxul.so|AsyncFunctionResume|hg:hg.mozilla.org/mozilla-central:js/src/vm/AsyncFunction.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|115|0x2a
0|33|libxul.so|PromiseReactionJob|hg:hg.mozilla.org/mozilla-central:js/src/builtin/Promise.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|1654|0x14
0|34|libxul.so|CallJSNative(JSContext*, bool ()(JSContext, unsigned int, JS::Value*), JS::CallArgs const&)|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|442|0x13
0|35|libxul.so|js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct)|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|534|0x12
0|36|libxul.so|InternalCall|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|589|0xd
0|37|libxul.so|js::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, js::AnyInvokeArgs const&, JS::MutableHandle<JS::Value>)|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|605|0x5
0|38|libxul.so|JS::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, JS::HandleValueArray const&, JS::MutableHandle<JS::Value>)|hg:hg.mozilla.org/mozilla-central:js/src/jsapi.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|2636|0x1c
0|39|libxul.so|mozilla::dom::PromiseJobCallback::Call(JSContext*, JS::Handle<JS::Value>, mozilla::ErrorResult&)|s3:gecko-generated-sources:9a1d7b79a06163fbb53a26fe5a9e7573a6c0296522cf46cac53323acca28bcc63b537b93692519b32bac2aa7f7516d355520b8ad8eeb69f726f98e2e37bd76a0/dom/bindings/PromiseBinding.cpp:|26|0x5
0|40|libxul.so|mozilla::dom::PromiseJobCallback::Call(mozilla::ErrorResult&, char const*, mozilla::dom::CallbackObject::ExceptionHandling, JS::Realm*)|s3:gecko-generated-sources:8ff597fee16137a41c5c768d4731e63150ba2f32aaccb2a1985be307f0fad868e61bb63f08de085a377133bcfcb41787e072b5d1f0cda75a29d00492f676fce1/dist/include/mozilla/dom/PromiseBinding.h:|91|0x12
0|41|libxul.so|mozilla::PromiseJobRunnable::Run(mozilla::AutoSlowOperation&)|hg:hg.mozilla.org/mozilla-central:xpcom/base/CycleCollectedJSContext.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|236|0x47
0|42|libxul.so|mozilla::CycleCollectedJSContext::PerformMicroTaskCheckPoint(bool)|hg:hg.mozilla.org/mozilla-central:xpcom/base/CycleCollectedJSContext.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|599|0x17
0|43|libxul.so|mozilla::CycleCollectedJSContext::AfterProcessTask(unsigned int)|hg:hg.mozilla.org/mozilla-central:xpcom/base/CycleCollectedJSContext.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|438|0x7
0|44|libxul.so|XPCJSContext::AfterProcessTask(unsigned int)|hg:hg.mozilla.org/mozilla-central:js/xpconnect/src/XPCJSContext.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|1273|0xb
0|45|libxul.so|nsThread::ProcessNextEvent(bool, bool*)|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThread.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|1240|0xc
0|46|libxul.so|NS_ProcessNextEvent(nsIThread*, bool)|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThreadUtils.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|486|0x11
0|47|libxul.so|mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*)|hg:hg.mozilla.org/mozilla-central:ipc/glue/MessagePump.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|88|0xa
0|48|libxul.so|MessageLoop::RunInternal()|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/message_loop.cc:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|315|0x17
0|49|libxul.so|MessageLoop::Run()|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/message_loop.cc:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|290|0x8
0|50|libxul.so|nsBaseAppShell::Run()|hg:hg.mozilla.org/mozilla-central:widget/nsBaseAppShell.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|137|0xd
0|51|libxul.so|XRE_RunAppShell()|hg:hg.mozilla.org/mozilla-central:toolkit/xre/nsEmbedFunctions.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|919|0x11
0|52|libxul.so|mozilla::ipc::MessagePumpForChildProcess::Run(base::MessagePump::Delegate*)|hg:hg.mozilla.org/mozilla-central:ipc/glue/MessagePump.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|238|0x5
0|53|libxul.so|MessageLoop::RunInternal()|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/message_loop.cc:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|315|0x17
0|54|libxul.so|MessageLoop::Run()|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/message_loop.cc:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|290|0x8
0|55|libxul.so|XRE_InitChildProcess(int, char**, XREChildData const*)|hg:hg.mozilla.org/mozilla-central:toolkit/xre/nsEmbedFunctions.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|757|0xc
0|56|firefox-bin|content_process_main(mozilla::Bootstrap*, int, char**)|hg:hg.mozilla.org/mozilla-central:ipc/contentproc/plugin-container.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|56|0x14
0|57|firefox-bin|main|hg:hg.mozilla.org/mozilla-central:browser/app/nsBrowserApp.cpp:ec1f3a922d56e0a9393415872ee1d30c2f895fd7|263|0x11
0|58|libc-2.27.so|__libc_start_main|||0xe7
0|59|firefox-bin|_start|||0x29

Flags: in-testsuite?

Byron, any thoughts?

Flags: needinfo?(docfaraday)
Priority: -- → P2

Yeah, that assertion should probably have been removed in bug 1535442.

Assignee: nobody → docfaraday
Flags: needinfo?(docfaraday)
Keywords: regression
Regressed by: 1535442

Try looks good.

I'm going to rebase this since it is wpt-related, and a bunch of wpt stuff has landed since.

Pushed by bcampen@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/6fd08aa576e9
Part 0: Fix a test-case for addIceCandidate({}), and add a test case for addIceCandidate({}) in stable. r=jib
https://hg.mozilla.org/integration/autoland/rev/05cac8b05b34
Part 1: Don't call PeerConnectionMedia::addIceCandidate for the end-of-candidates case. r=mjf
Status: NEW → RESOLVED
Closed: 4 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla68
Created web-platform-tests PR https://github.com/web-platform-tests/wpt/pull/16713 for changes under testing/web-platform/tests
Upstream PR merged
You need to log in before you can comment on or make changes to this bug.