Closed Bug 1687118 Opened 4 years ago Closed 3 years ago

Startup crash in [@ mozilla::dom::Promise::MaybeSomething<T>] from mozilla::dom::DocumentL10n::TriggerInitialTranslation

Categories

(Core :: Internationalization: Localization, defect, P2)

Unspecified
All
defect

Tracking

()

RESOLVED FIXED
96 Branch
Tracking Status
firefox-esr91 --- fixed
firefox94 --- wontfix
firefox95 --- wontfix
firefox96 --- fixed

People

(Reporter: aryx, Assigned: zbraniecki)

Details

(Keywords: crash)

Crash Data

Attachments

(1 file)

1242 crashes in the last half year, many of those on startup.

Crash report: https://crash-stats.mozilla.org/report/index/8e46a71c-6245-4cde-8664-8c3f60210116

Reason: EXCEPTION_ACCESS_VIOLATION_READ

Top 10 frames of crashing thread:

0 xul.dll mozilla::dom::Promise::MaybeSomething<JS::Handle<JS::Value>&> dom/promise/Promise.h:322
1 xul.dll mozilla::dom::Promise::MaybeRejectWithUndefined dom/promise/Promise.cpp:505
2 xul.dll mozilla::dom::DocumentL10n::TriggerInitialTranslation dom/l10n/DocumentL10n.cpp:110
3 xul.dll nsHtml5TreeOpExecutor::DidBuildModel parser/html/nsHtml5TreeOpExecutor.cpp:179
4 xul.dll nsHtml5TreeOpExecutor::RunFlushLoop parser/html/nsHtml5TreeOpExecutor.cpp:529
5 xul.dll nsHtml5ExecutorReflusher::Run parser/html/nsHtml5TreeOpExecutor.cpp:70
6 xul.dll mozilla::SchedulerGroup::Runnable::Run xpcom/threads/SchedulerGroup.cpp:146
7 xul.dll mozilla::TaskController::DoExecuteNextTaskOnlyMainThreadInternal xpcom/threads/TaskController.cpp:739
8 xul.dll nsThread::ProcessNextEvent xpcom/threads/nsThread.cpp:1200
9 xul.dll mozilla::ipc::MessagePump::Run ipc/glue/MessagePump.cpp:87

Emilio - Am I correct to assume that this is not Intl::L10n, but DOM category bug?

Component: Internationalization → Internationalization: Localization
Flags: needinfo?(emilio)

No, this is an l10n bug. The mReady promise seems null, so either Init() failed or we're running TriggerInitialTranslation after cycle collection.

Flags: needinfo?(emilio)

thank you!

Severity: -- → S2
Priority: -- → P2
Assignee: nobody → zbraniecki
Status: NEW → ASSIGNED

Ok, so Init should bail early if mReady fails to initialize, so I'm suspecting cycle collection route.

I could let the initial translation happen and just skip the mReady state setting, but if it is cycle collection, then engaging in translating the UI during shutdown seems pointless.

Pushed by zbraniecki@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/f172e803d80c Bail early from DocumentL10n::TriggerInitialTranslation if mReady is not available. r=emilio,nordzilla
Status: ASSIGNED → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → 96 Branch

Please nominate this for ESR approval when you get a chance.

Flags: needinfo?(zbraniecki)

Comment on attachment 9250939 [details]
Bug 1687118 - Bail early from DocumentL10n::TriggerInitialTranslation if mReady is not available. r?emilio,nordzilla

ESR Uplift Approval Request

  • If this is not a sec:{high,crit} bug, please state case for ESR consideration:
  • User impact if declined: Some volume of shutdown crashes
  • Fix Landed on Version: 96
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky): It only adds a conditional early bailout
  • String or UUID changes made by this patch:
Flags: needinfo?(zbraniecki)
Attachment #9250939 - Flags: approval-mozilla-esr91?

Comment on attachment 9250939 [details]
Bug 1687118 - Bail early from DocumentL10n::TriggerInitialTranslation if mReady is not available. r?emilio,nordzilla

Approved for 91.5esr.

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

Attachment

General

Created:
Updated:
Size: