Crashes in NitroPDF creator and reader, e.g. in [@ nitropdfdrivercreator11.dll | nitroui11.dll | DocumentPropertySheets]
Categories
(External Software Affecting Firefox :: Other, defect)
Tracking
(firefox-esr78 unaffected, firefox82 wontfix, firefox83 wontfix, firefox84 fixed, firefox85 fixed)
| Tracking | Status | |
|---|---|---|
| firefox-esr78 | --- | unaffected |
| firefox82 | --- | wontfix |
| firefox83 | --- | wontfix |
| firefox84 | --- | fixed |
| firefox85 | --- | fixed |
People
(Reporter: aryx, Assigned: bobowen)
Details
(Keywords: crash)
Crash Data
Attachments
(1 file)
|
47 bytes,
text/x-phabricator-request
|
jcristau
:
approval-mozilla-beta+
|
Details | Review |
There are various crash signatures from Nitro PDF affecting Nightly and early Beta (no reports for 83.0b7+ or 83.0rcs).
Bob, please triage these. They are often initiated by nsPrinterWin::CopyDefaultDevmodeW and triggered on pages which are PDFs, e.g. http://www.ddepotosi.gob.bo/Convo_Inscripcion_2021.pdf An exception is https://am.jpmorgan.com/ie/en/asset-management/institutional/insights/market-insights/guide-to-the-markets/# but this has a button for calling window.print() - the condition might just be the initiating of the print feature.
Crash report: https://crash-stats.mozilla.org/report/index/3619c8bf-5ab9-4be8-93ab-a2fde0201028
Reason: EXCEPTION_ACCESS_VIOLATION_READ
Top 10 frames of crashing thread:
0 nitropdfdrivercreator11.dll nitropdfdrivercreator11.dll@0x34fd8
1 nitroui11.dll nitroui11.dll@0x6597
2 nitroui11.dll nitroui11.dll@0x6636
3 nitroui11.dll nitroui11.dll@0x6b53
4 nitroui11.dll nitroui11.dll@0x3149
5 nitroui11.dll nitroui11.dll@0x42a0
6 winspool.drv DocumentPropertySheets
7 winspool.drv long __stdcall DocumentPropertiesWNative
8 xul.dll nsPrinterWin::CopyDefaultDevmodeW const widget/windows/nsPrinterWin.cpp:66
9 xul.dll nsPrinterWin::DefaultSettings const widget/windows/nsPrinterWin.cpp:84
| Assignee | ||
Comment 1•5 years ago
|
||
I can reproduce this if I install an old unsupported version of NitroPDF (10 or 11).
It looks like the driver has a threading issue, so when we are using it on multiple background threads to pull back capabilities and settings you get the crash.
I guess this might be an issue with other (perhaps older) drivers as well.
I think I've found a solution to this where we pass in a copy of our cached default devmode to the DeviceCapabilitiesW calls.
| Assignee | ||
Comment 2•5 years ago
|
||
This is to prevent threading issues that some drivers seem to have when they
access their own default DEVMODE internally.
| Assignee | ||
Comment 3•5 years ago
|
||
Try server seem pretty slow at the moment:
https://treeherder.mozilla.org/jobs?repo=try&revision=d2c2e09345488f9d4945c51fa12ccaad190de4f7
| Assignee | ||
Comment 4•5 years ago
|
||
| Assignee | ||
Updated•5 years ago
|
| Assignee | ||
Updated•5 years ago
|
Comment 6•5 years ago
|
||
| bugherder | ||
Updated•5 years ago
|
| Assignee | ||
Updated•5 years ago
|
Comment 7•5 years ago
|
||
The patch landed in nightly and beta is affected.
:bobowen, is this bug important enough to require an uplift?
If not please set status_beta to wontfix.
For more information, please visit auto_nag documentation.
| Assignee | ||
Comment 8•5 years ago
|
||
(In reply to Release mgmt bot [:sylvestre / :calixte / :marco for bugbug] from comment #7)
The patch landed in nightly and beta is affected.
:bobowen, is this bug important enough to require an uplift?
If not please setstatus_betatowontfix.For more information, please visit auto_nag documentation.
I have concerns that we might see this and similar issues more in release, so I think it probably should be uplifted.
We've not passed a DEVMODE into this system function before, so I wanted to let it bake a little on Nightly.
Although as I type this, given our currently short Beta cycle maybe uplifting earlier is better, so it has time to display any issues if there are any on Beta.
I'll request the uplift.
| Assignee | ||
Comment 9•5 years ago
|
||
Comment on attachment 9189204 [details]
Bug 1677388: Pass a copy of our cached default DEVMODE into DeviceCapabilitiesW calls. r=jfkthame!
Beta/Release Uplift Approval Request
- User impact if declined: Users with printer drivers that don't handle being called on separate threads, especially when accessing shared information like their default DEVMODE will experience full browser crashes.
- Is this code covered by automated tests?: No
- Has the fix been verified in Nightly?: Yes
- Needs manual test from QE?: No
- If yes, steps to reproduce:
- List of other uplifts needed: None
- Risk to taking this patch: Medium
- Why is the change risky/not risky? (and alternatives if risky): I'm saying medium, because although the patch is fairly simple, we are passing in a DEVMODE to DeviceCapabilitiesW, which we haven't before.
The documentation says that if you don't pass in a DEVMODE then the default one is used and that is what we are passing in, so in theory the outcome should be the same. - String changes made/needed: None
Comment 10•5 years ago
|
||
Comment on attachment 9189204 [details]
Bug 1677388: Pass a copy of our cached default DEVMODE into DeviceCapabilitiesW calls. r=jfkthame!
approved for 84.0b5
Comment 11•5 years ago
|
||
| bugherder uplift | ||
Description
•