Closed Bug 1359089 Opened 7 years ago Closed 6 years ago

print preview hangs browser

Categories

(Core :: Print Preview, defect)

defect
Not set
normal

Tracking

()

RESOLVED INCOMPLETE

People

(Reporter: aryx, Unassigned)

Details

Tested with Firefox 55.0a1 20170424 32-bit and 53.0 64-bit

Similar to bug 1276717.

This is due to print settings (see below):
0. Import the print settings from below and add them to the prefs.js file in the Firefox profile.
1. Open http://www.freiepresse.de/RATGEBER/REISE/Abflug-in-Prag-lohnt-sich-das-artikel9819481.php
2. Open menu File > Print Preview
Actual result:
Print preview prompt shown, one hyperthread is under full load.
Expected:
Print preview shown.

No idea if the PDFCreator printer is necessary for this: http://download.pdfforge.org/download/pdfcreator/PDFCreator-stable

This can be fixed by resetting these preferences:

user_pref("print.printer_PDFCreator.print_paper_height", " 11,00");
user_pref("print.printer_PDFCreator.print_paper_width", "  8,50");
user_pref("print.printer_PDFCreator.print_scaling", "  1,00");

to their initial values (in about:config).

Initial printer values:
user_pref("print.print_printer", "PDFCreator");
user_pref("print.printer_PDFCreator.print_bgcolor", false);
user_pref("print.printer_PDFCreator.print_bgimages", false);
user_pref("print.printer_PDFCreator.print_colorspace", "");
user_pref("print.printer_PDFCreator.print_command", "");
user_pref("print.printer_PDFCreator.print_downloadfonts", false);
user_pref("print.printer_PDFCreator.print_duplex", 1152);
user_pref("print.printer_PDFCreator.print_edge_bottom", 0);
user_pref("print.printer_PDFCreator.print_edge_left", 0);
user_pref("print.printer_PDFCreator.print_edge_right", 0);
user_pref("print.printer_PDFCreator.print_edge_top", 0);
user_pref("print.printer_PDFCreator.print_evenpages", true);
user_pref("print.printer_PDFCreator.print_footercenter", "");
user_pref("print.printer_PDFCreator.print_footerleft", "");
user_pref("print.printer_PDFCreator.print_footerright", "");
user_pref("print.printer_PDFCreator.print_headercenter", "");
user_pref("print.printer_PDFCreator.print_headerleft", "");
user_pref("print.printer_PDFCreator.print_headerright", "");
user_pref("print.printer_PDFCreator.print_in_color", true);
user_pref("print.printer_PDFCreator.print_margin_bottom", "0.787500023841858");
user_pref("print.printer_PDFCreator.print_margin_left", "0.787500023841858");
user_pref("print.printer_PDFCreator.print_margin_right", "0.787500023841858");
user_pref("print.printer_PDFCreator.print_margin_top", "0.787500023841858");
user_pref("print.printer_PDFCreator.print_oddpages", true);
user_pref("print.printer_PDFCreator.print_orientation", 1);
user_pref("print.printer_PDFCreator.print_page_delay", 50);
user_pref("print.printer_PDFCreator.print_paper_data", 9);
user_pref("print.printer_PDFCreator.print_paper_height", " 11,00");
user_pref("print.printer_PDFCreator.print_paper_name", "");
user_pref("print.printer_PDFCreator.print_paper_size_type", 0);
user_pref("print.printer_PDFCreator.print_paper_size_unit", 1);
user_pref("print.printer_PDFCreator.print_paper_width", "  8,50");
user_pref("print.printer_PDFCreator.print_plex_name", "");
user_pref("print.printer_PDFCreator.print_resolution", 8448);
user_pref("print.printer_PDFCreator.print_resolution_name", "");
user_pref("print.printer_PDFCreator.print_reversed", false);
user_pref("print.printer_PDFCreator.print_scaling", "  1,00");
user_pref("print.printer_PDFCreator.print_shrink_to_fit", false);
user_pref("print.printer_PDFCreator.print_to_file", false);
user_pref("print.printer_PDFCreator.print_to_filename", "");
user_pref("print.printer_PDFCreator.print_unwriteable_margin_bottom", 0);
user_pref("print.printer_PDFCreator.print_unwriteable_margin_left", 0);
user_pref("print.printer_PDFCreator.print_unwriteable_margin_right", 0);
user_pref("print.printer_PDFCreator.print_unwriteable_margin_top", 0);

Example stack of thread under load:

xul.dll!nsIFrame::UsedBorderProperty+0xd
xul.dll!nsIFrame::GetUsedBorder+0xd3
xul.dll!nsIFrame::GetUsedBorderAndPadding+0x38
xul.dll!nsIFrame::GetLogicalUsedBorderAndPadding+0x17
xul.dll!nsIFrame::ContentBSize+0x19
xul.dll!nsSplittableFrame::ConsumedBSize+0x7e7008
xul.dll!nsBlockFrame::Reflow+0x5f
xul.dll!nsContainerFrame::ReflowChild+0x66
xul.dll!nsCanvasFrame::Reflow+0x1a1
xul.dll!nsContainerFrame::ReflowChild+0x7f
xul.dll!nsPageContentFrame::Reflow+0x132
xul.dll!nsContainerFrame::ReflowChild+0x7f
xul.dll!nsPageFrame::Reflow+0x27c
xul.dll!nsContainerFrame::ReflowChild+0x7f
xul.dll!nsSimplePageSequenceFrame::Reflow+0x4a0
xul.dll!nsContainerFrame::ReflowChild+0x66
xul.dll!nsHTMLScrollFrame::ReflowScrolledFrame+0x25f
xul.dll!nsHTMLScrollFrame::ReflowContents+0x71
xul.dll!nsHTMLScrollFrame::Reflow+0x1be
xul.dll!nsContainerFrame::ReflowChild+0x7f
xul.dll!mozilla::ViewportFrame::Reflow+0x2cc
xul.dll!mozilla::PresShell::DoReflow+0x300
xul.dll!mozilla::PresShell::ProcessReflowCommands+0xdd
xul.dll!mozilla::PresShell::FlushPendingNotifications+0x25f
xul.dll!nsPrintEngine::ReflowPrintObject+0x478
xul.dll!nsPrintEngine::ReflowDocList+0x93
xul.dll!nsPrintEngine::InitPrintDocConstruction+0x2d
xul.dll!nsPrintEngine::DoCommonPrint+0x9ff
xul.dll!nsPrintEngine::CommonPrint+0x38
xul.dll!nsPrintEngine::PrintPreview+0xbf
xul.dll!nsDocumentViewer::PrintPreview+0x2de
xul.dll!XPTC__InvokebyIndex+0x72
xul.dll!XPCWrappedNative::CallMethod+0x339
xul.dll!XPC_WN_CallMethod+0x170
xul.dll!js::InternalCallOrConstruct+0x155
xul.dll!Interpret+0x4eb0
xul.dll!js::RunScript+0x31f
xul.dll!js::InternalCallOrConstruct+0x24b
xul.dll!Interpret+0x4eb0
xul.dll!js::RunScript+0x31f
xul.dll!js::InternalCallOrConstruct+0x24b
xul.dll!JS_CallFunctionValue+0x13e
xul.dll!nsFrameMessageManager::ReceiveMessage+0x8e7
xul.dll!mozilla::dom::TabChild::RecvAsyncMessage+0xff
xul.dll!mozilla::dom::PBrowserChild::OnMessageReceived+0x303
xul.dll!mozilla::dom::PContentChild::OnMessageReceived+0x68
xul.dll!mozilla::ipc::MessageChannel::DispatchAsyncMessage+0x6b
xul.dll!mozilla::ipc::MessageChannel::DispatchMessageW+0x194
xul.dll!mozilla::ipc::MessageChannel::RunMessage+0x69
xul.dll!mozilla::ipc::MessageChannel::MessageTask::Run+0x48
xul.dll!nsThread::ProcessNextEvent+0x26b
xul.dll!mozilla::ipc::MessagePump::Run+0x9e
xul.dll!mozilla::ipc::MessagePumpForChildProcess::Run+0x70
xul.dll!MessageLoop::RunHandler+0x1b
xul.dll!MessageLoop::Run+0x3e
xul.dll!nsBaseAppShell::Run+0x3c
xul.dll!nsAppShell::Run+0x2c
xul.dll!XRE_RunAppShell+0x2e
xul.dll!mozilla::ipc::MessagePumpForChildProcess::Run+0x29
xul.dll!MessageLoop::RunHandler+0x1b
xul.dll!MessageLoop::Run+0x3e
xul.dll!XRE_InitChildProcess+0x68a
firefox.exe!content_process_main+0xa4
firefox.exe!NS_internal_main+0x59d6
firefox.exe!wmain+0x140
firefox.exe!__scrt_common_main_seh+0x11d
KERNEL32.DLL!BaseThreadInitThunk+0x22
ntdll.dll!RtlUserThreadStart+0x34
(In reply to Sebastian Hengst [:aryx][:archaeopteryx] (needinfo on intermittent or backout) from comment #0)
> user_pref("print.printer_PDFCreator.print_paper_height", " 11,00");
> user_pref("print.printer_PDFCreator.print_paper_width", "  8,50");
> user_pref("print.printer_PDFCreator.print_scaling", "  1,00");

These values are the same as the values you then go on to list as being the "Initial printer values". What are the actual values that result in the hang?

> Example stack of thread under load:
>
> xul.dll!nsIFrame::UsedBorderProperty+0xd
[snip]

If you step up the frame tree, at which frame does the loop occur? (When Firefox returns to spinning instead of being paused in the debugger.)
Flags: needinfo?(aryx.bugmail)
(In reply to Jonathan Watt [:jwatt] (needinfo? me) from comment #1)
> (In reply to Sebastian Hengst [:aryx][:archaeopteryx] (needinfo on
> intermittent or backout) from comment #0)
> > user_pref("print.printer_PDFCreator.print_paper_height", " 11,00");
> > user_pref("print.printer_PDFCreator.print_paper_width", "  8,50");
> > user_pref("print.printer_PDFCreator.print_scaling", "  1,00");
> 
> These values are the same as the values you then go on to list as being the
> "Initial printer values". What are the actual values that result in the hang?
With "Initial printer values" I mean to right-click them and choose "Reset".

> > Example stack of thread under load:
> >
> > xul.dll!nsIFrame::UsedBorderProperty+0xd
> [snip]
> 
> If you step up the frame tree, at which frame does the loop occur? (When
> Firefox returns to spinning instead of being paused in the debugger.)
Unfortunately, the article has disappeared behind a paywall, so I can't test this anymore.(In reply to Jonathan Watt [:jwatt] (needinfo? me) from comment #1)
> (In reply to Sebastian Hengst [:aryx][:archaeopteryx] (needinfo on
> intermittent or backout) from comment #0)
> > user_pref("print.printer_PDFCreator.print_paper_height", " 11,00");
> > user_pref("print.printer_PDFCreator.print_paper_width", "  8,50");
> > user_pref("print.printer_PDFCreator.print_scaling", "  1,00");
> 
> These values are the same as the values you then go on to list as being the
> "Initial printer values". What are the actual values that result in the hang?
> 
> > Example stack of thread under load:
> >
> > xul.dll!nsIFrame::UsedBorderProperty+0xd
> [snip]
> 
> If you step up the frame tree, at which frame does the loop occur? (When
> Firefox returns to spinning instead of being paused in the debugger.)

(In reply to Jonathan Watt [:jwatt] (needinfo? me) from comment #1)
> (In reply to Sebastian Hengst [:aryx][:archaeopteryx] (needinfo on
> intermittent or backout) from comment #0)
> > user_pref("print.printer_PDFCreator.print_paper_height", " 11,00");
> > user_pref("print.printer_PDFCreator.print_paper_width", "  8,50");
> > user_pref("print.printer_PDFCreator.print_scaling", "  1,00");
> 
> These values are the same as the values you then go on to list as being the
> "Initial printer values". What are the actual values that result in the hang?
> 
> > Example stack of thread under load:
> >
> > xul.dll!nsIFrame::UsedBorderProperty+0xd
> [snip]
> 
> If you step up the frame tree, at which frame does the loop occur? (When
> Firefox returns to spinning instead of being paused in the debugger.)

(In reply to Jonathan Watt [:jwatt] (needinfo? me) from comment #1)
> (In reply to Sebastian Hengst [:aryx][:archaeopteryx] (needinfo on
> intermittent or backout) from comment #0)
> > user_pref("print.printer_PDFCreator.print_paper_height", " 11,00");
> > user_pref("print.printer_PDFCreator.print_paper_width", "  8,50");
> > user_pref("print.printer_PDFCreator.print_scaling", "  1,00");
> 
> These values are the same as the values you then go on to list as being the
> "Initial printer values". What are the actual values that result in the hang?
> 
> > Example stack of thread under load:
> >
> > xul.dll!nsIFrame::UsedBorderProperty+0xd
> [snip]
> 
> If you step up the frame tree, at which frame does the loop occur? (When
> Firefox returns to spinning instead of being paused in the debugger.)
Status: NEW → RESOLVED
Closed: 6 years ago
Flags: needinfo?(aryx.bugmail)
Resolution: --- → INCOMPLETE
You need to log in before you can comment on or make changes to this bug.