Closed Bug 1877679 Opened 1 year ago Closed 1 year ago

Crash in [@ <name omitted> | <name omitted> | mozilla::FunctionRef<T>::FunctionRef<T>::{lambda#1}::_FUN]

Categories

(Core :: WebRTC: Audio/Video, defect)

defect

Tracking

()

RESOLVED FIXED
124 Branch
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)

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: nobody → jgrulich
Status: NEW → ASSIGNED

Use ContiguousEnumSerializerInclusive providing highest legal value
instead as the CameraAccessStatus enum doesn't have a sentinel value.

Pushed by pehrsons@gmail.com: https://hg.mozilla.org/integration/autoland/rev/61ca6f60af1a Fix serialization of CameraAccessStatus enum r=pehrsons
Status: ASSIGNED → RESOLVED
Closed: 1 year ago
Resolution: --- → FIXED
Target Milestone: --- → 124 Branch

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 to wontfix.

For more information, please visit BugBot documentation.

Flags: needinfo?(jgrulich)

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
Flags: needinfo?(jgrulich)
Attachment #9377382 - Flags: approval-mozilla-beta?

Comment on attachment 9377382 [details]
Bug 1877679 - Fix serialization of CameraAccessStatus enum r=pehrsons

Approved for 123 beta 9, thanks.

Attachment #9377382 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: