Closed Bug 1667405 Opened 4 years ago Closed 4 years ago

Crash in [@ nsPrinterWin::DefaultSettings], due to failure of MOZ_DIAGNOSTIC_ASSERT(printerDc, "CreateICW failed");

Categories

(Core :: Printing: Setup, defect, P2)

Unspecified
Windows
defect

Tracking

()

RESOLVED FIXED
Tracking Status
firefox-esr78 --- unaffected
firefox81 --- unaffected
firefox82 --- fixed
firefox83 + fixed

People

(Reporter: aryx, Unassigned)

References

Details

(Keywords: crash, Whiteboard: [print2020_v83][old-ui-])

Crash Data

First crash was with 82.0a1 20200915092930, this report is for the latest 83.0a1 Nightly.

Crash report: https://crash-stats.mozilla.org/report/index/3d024893-885f-4f5d-94a4-f7cb20200925

Top 10 frames of crashing thread:

0 xul.dll nsPrinterWin::DefaultSettings const widget/windows/nsPrinterWin.cpp:102
1 xul.dll static std::_C__Invoker_functor::_Call<`lambda at /builds/worker/checkouts/gecko/widget/PrintBackgroundTask.h:54:17'> 
2 xul.dll mozilla::SpawnPrintBackgroundTask<nsPrinterBase, mozilla::PrintSettingsInitializer>::<unnamed-tag>::operator const widget/PrintBackgroundTask.h:53
3 xul.dll mozilla::detail::RunnableFunction<`lambda at /builds/worker/checkouts/gecko/widget/PrintBackgroundTask.h:48:11'>::Run xpcom/threads/nsThreadUtils.h:577
4 xul.dll nsThreadPool::Run xpcom/threads/nsThreadPool.cpp:299
5 xul.dll nsThread::ProcessNextEvent xpcom/threads/nsThread.cpp:1234
6 xul.dll mozilla::ipc::MessagePumpForNonMainThreads::Run ipc/glue/MessagePump.cpp:332
7 xul.dll MessageLoop::RunHandler ipc/chromium/src/base/message_loop.cc:327
8 xul.dll MessageLoop::Run ipc/chromium/src/base/message_loop.cc:309
9 xul.dll static nsThread::ThreadFunc xpcom/threads/nsThread.cpp:442

This crash report is from the following MOZ_DIAGNOSTIC_ASSERT failing:

  MOZ_DIAGNOSTIC_ASSERT(printerDc, "CreateICW failed");

Source link:
https://hg.mozilla.org/mozilla-central/file/8734082cd6de033539bb6c5e24709bc9647b5b1a/widget/windows/nsPrinterWin.cpp#l102

bobowen, looks like you've been poking around in this code recently - mind taking a look? (Maybe this is the answer to your question in bug 1663494 comment 2?)

Flags: needinfo?(bobowencode)
See Also: → 1663494
Summary: Crash in [@ nsPrinterWin::DefaultSettings] → Crash in [@ nsPrinterWin::DefaultSettings], due to failure of MOZ_DIAGNOSTIC_ASSERT(printerDc, "CreateICW failed");
Severity: -- → S2
Whiteboard: [print2020]
Priority: -- → P2
Whiteboard: [print2020] → [print2020_v83][old-ui-]

I was thinking that maybe bug 1664981 might have fixed this (it is in b4), but we've had one in Nightly since that landed.

I'll try and take a look at the crash reports, but I agree if this is just an unexplained system API failure then we probably shouldn't keep the diagnostic assert.

jwatt: do you think we should move this sort of failure to telemetry to at least track the numbers on release?
perhaps we already have good enough higher level tracking of failures ... or we should put something in at a higher level?

Flags: needinfo?(bobowencode) → needinfo?(jwatt)

This assert is removed by the patch in bug 1667952.

Depends on: 1667952

Per comment 3, with bug 1667952 landed and soon-to-be-uplifted to 82 beta, I think we can close this.

Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED

(In reply to Bob Owen (:bobowen) from comment #3)

This assert is removed by the patch in bug 1667952.

Which has now been uplifted to beta.

Flags: needinfo?(jwatt)
You need to log in before you can comment on or make changes to this bug.