Crash in [@ <name omitted> | <name omitted> | mozilla::FunctionRef<T>::FunctionRef<T>::{lambda#1}::_FUN]
Categories
(Core :: WebRTC: Audio/Video, defect)
Tracking
()
Tracking | Status | |
---|---|---|
firefox-esr115 | --- | unaffected |
firefox122 | --- | wontfix |
firefox123 | --- | fixed |
firefox124 | --- | fixed |
People
(Reporter: jgrulich, Assigned: jgrulich)
References
(Regression)
Details
(Keywords: crash, regression)
Crash Data
Attachments
(1 file)
48 bytes,
text/x-phabricator-request
|
pascalc
:
approval-mozilla-beta+
|
Details | Review |
Crash report: https://crash-stats.mozilla.org/report/index/05ab9583-c87d-4817-9356-15fc50240130
MOZ_CRASH Reason: MOZ_RELEASE_ASSERT(EnumValidator::IsLegalValue( static_cast<std::underlying_type_t<paramType>>(aValue)))
Top 10 frames of crashing thread:
0 libxul.so IPC::EnumSerializer<mozilla::camera::CamerasAccessStatus, IPC::ContiguousEnumValidator<mozilla::camera::CamerasAccessStatus, /usr/src/debug/firefox-122.0-1.fc39.x86_64/objdir/dist/include/ipc/EnumSerializer.h:60
0 libxul.so IPC::WriteParam<mozilla::camera::CamerasAccessStatus const&> /usr/src/debug/firefox-122.0-1.fc39.x86_64/ipc/chromium/src/chrome/common/ipc_message_utils.h:441
0 libxul.so <name omitted> /usr/src/debug/firefox-122.0-1.fc39.x86_64/objdir/ipc/ipdl/PBackgroundParent.cpp:6044
0 libxul.so <name omitted> /usr/src/debug/firefox-122.0-1.fc39.x86_64/objdir/dist/include/mozilla/FunctionRef.h:187
0 libxul.so mozilla::FunctionRef<void /usr/src/debug/firefox-122.0-1.fc39.x86_64/objdir/dist/include/mozilla/FunctionRef.h:180
1 libxul.so mozilla::FunctionRef<void const /usr/src/debug/firefox-122.0-1.fc39.x86_64/objdir/dist/include/mozilla/FunctionRef.h:217
1 libxul.so mozilla::ipc::IPDLResolverInner::ResolveOrReject /usr/src/debug/firefox-122.0-1.fc39.x86_64/ipc/glue/ProtocolUtils.cpp:839
2 libxul.so Resolve<mozilla::ipc::PBackgroundParent::OnMessageReceived> > /usr/src/debug/firefox-122.0-1.fc39.x86_64/objdir/dist/include/mozilla/ipc/ProtocolUtils.h:720
2 libxul.so <name omitted> /usr/src/debug/firefox-122.0-1.fc39.x86_64/objdir/ipc/ipdl/PBackgroundParent.cpp:6042
2 libxul.so __invoke_impl<void, mozilla::ipc::PBackgroundParent::OnMessageReceived>&, const mozilla::camera::CamerasAccessStatus&> /usr/include/c++/13/bits/invoke.h:61
Assignee | ||
Updated•1 year ago
|
Assignee | ||
Updated•1 year ago
|
Assignee | ||
Comment 1•1 year ago
|
||
Use ContiguousEnumSerializerInclusive providing highest legal value
instead as the CameraAccessStatus enum doesn't have a sentinel value.
Comment 3•1 year ago
|
||
bugherder |
Updated•1 year ago
|
Comment 4•1 year ago
|
||
The patch landed in nightly and beta is affected.
:jgrulich, is this bug important enough to require an uplift?
- If yes, please nominate the patch for beta approval.
- If no, please set
status-firefox123
towontfix
.
For more information, please visit BugBot documentation.
Assignee | ||
Comment 5•1 year ago
|
||
Comment on attachment 9377382 [details]
Bug 1877679 - Fix serialization of CameraAccessStatus enum r=pehrsons
Beta/Release Uplift Approval Request
- User impact if declined: Firefox might crash in case it failed to use camera over PipeWire caused by wrong enum serialization. We were using highest legal value as a sentinel value and this didn't pass through the EnumValidator.
- Is this code covered by automated tests?: No
- Has the fix been verified in Nightly?: No
- Needs manual test from QE?: No
- If yes, steps to reproduce:
- List of other uplifts needed: None
- Risk to taking this patch: Low
- Why is the change risky/not risky? (and alternatives if risky): It's a simple fix for enum serialization of an enum used by PipeWire camera support. This enum didn't have sentinel value and we were using wrong serializer for it.
- String changes made/needed:
- Is Android affected?: No
Comment 6•1 year ago
|
||
Comment on attachment 9377382 [details]
Bug 1877679 - Fix serialization of CameraAccessStatus enum r=pehrsons
Approved for 123 beta 9, thanks.
Updated•1 year ago
|
Description
•