Closed Bug 449232 Opened 11 years ago Closed 11 years ago

Firefox 3.0.1 crashes on printing

Categories

(Core :: Printing: Output, defect, critical)

x86
Linux
defect
Not set
critical

Tracking

()

VERIFIED DUPLICATE of bug 422916

People

(Reporter: gustavo, Unassigned)

Details

User-Agent:       Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) Gecko/2008070206 Firefox/3.0.1
Build Identifier: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) Gecko/2008070206 Firefox/3.0.1

Firefox 3.0.1 crashes everytime one tries to print. As soon as the printing dialog box appear (we can only see it for half a second or so) it crashes.

(gdb) backtrace
#0  0xb69ccd92 in strncpy () from /lib/tls/libc.so.6
#1  0xb48c399a in pb_module_create () from /usr/lib/gtk-2.0/2.10.0/printbackends/libprintbackend-cups.so
#2  0x00000000 in ?? ()
(gdb)
             

Reproducible: Always

Steps to Reproduce:
1.launch firefox
2.try to print
3.watch is crash
Actual Results:  
I would expect the printing dialog to be shown

Expected Results:  
It just crashes

This is the firefox build from mozilla.com

Gtk+ version is 2.10.3

about:buildconfig

Build platform
target
i686-pc-linux-gnu

Build tools
Compiler 	Version 	Compiler flags
/tools/gcc/bin/gcc 	gcc version 4.1.2 20061011 (Red Hat 4.1.1-29) 	-Wall -W -Wno-unused -Wpointer-arith -Wcast-align -W -Wno-long-long -pedantic -gstabs+ -fno-strict-aliasing -pthread -pipe
/tools/gcc/bin/g++ 	gcc version 4.1.2 20061011 (Red Hat 4.1.1-29) 	-fno-rtti -fno-exceptions -Wall -Wconversion -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-long-long -pedantic -gstabs+ -fno-strict-aliasing -fshort-wchar -pthread -pipe

Configure arguments
--enable-application=browser --enable-update-channel=release --enable-update-packaging --enable-optimize --disable-debug --disable-tests --enable-official-branding
Component: OS Integration → Printing: Output
Product: Firefox → Core
QA Contact: os.integration → printing
Is there a way to call kprinter instead of the gtk printing dialog to work around this crash?

It doesn't crash if

print.always_print_silent is set to true. 

But even with the folowing preferences set:

print.always_print_silent;true 
print.postscript.cups.enabled;false
print.postscript.enabled;true
print.postscript.print_command;kprinter 
print.printer_PostScript/default.print_command;kprinter

Firefox 3 still connects directly to the CUPS server.

I tried removing /usr/bin/lp* and it is clear that "Firefox 3" doesn't use any of them. I could see with netstat that it connects directly to localhost:631.

*QUESTION*

How can one force the postscript module to be used, so that Firefox submits postscript via "lpr" or other custom command?

Thanks you very much
Additional info:

- if cups is down and print.always_print_silent==false, firefox 3 shows the Gtk print dialog with only the "print to file" option available (doesn't crash)
- the print.printer_list preference is ignored, the list of printers stays empty regardless of this preference

The following messages appear on the terminal:


** (Gecko:4675): WARNING **: Error result: Too many failed attempts

** (Gecko:4675): WARNING **: Error getting printer list: Too many failed attempts

See bug 422916 comment 28 -- this crash is a bug in the GTK2 library, fixed at some point between 2.10.6-* and 2.10.13-*.
Status: UNCONFIRMED → RESOLVED
Closed: 11 years ago
Resolution: --- → DUPLICATE
Duplicate of bug: 422916
Thanks Daniel.

It would important how to bypass gtk and let firefox print postscript via a custom command.
it becomes less important over time. we're unlikely to fix it, but it's a different bug.
Status: RESOLVED → VERIFIED
(In reply to comment #6)
> it becomes less important over time. we're unlikely to fix it,but it's a different bug.

do you mean not being able to print via postscript/lpr/custom command is a bug? or has the procedure just changed?

If it is a bug, it is a regression from Firefox 2, where we could do that.


You need to log in before you can comment on or make changes to this bug.