Firefox crashes on some pages

Bug #68586 reported by Oscar
6
Affects Status Importance Assigned to Milestone
firefox (Ubuntu)
New
Undecided
Unassigned

Bug Description

Whenever I go to some pages FF2 crashes. This is on Edgy.
I thought that it was because of Flash but I removed that package but the problem persists.

I did a strace of the startup which I will attach to this bugreport.

Revision history for this message
Oscar (osh-nbit) wrote :

The strace of FF2 crashing. The strace is started like this:
strace mozilla-firefox http://www.morningstar.se

Whenever I go to that page (and some others) the browser just closes.

Revision history for this message
Don Scorgie (don-scorgie) wrote :

From the strace:

write(2, "The program \'firefox-bin\' receiv"..., 571The program 'firefox-bin' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadMatch (invalid parameter attributes)'.
  (Details: serial 118 error_code 8 request_code 147 minor_code 3)
  (Note to programmers: normally, X errors are reported asynchronously;
   that is, you will receive the error a while after causing it.
   To debug your program, run it with the --sync command line
   option to change this behavior. You can then get a meaningful
   backtrace from your debugger if you break on the gdk_x_error() function.)
) = 571

It would probably help the developers if you could get a stacktrace breaking on gdk_x_error. Unfortunately, I'm away from my Ubuntu install at the moment, so I can't confirm the bug / get a stacktrace. The steps involved are something like (from memory!):
*1. From a terminal run 'firefox --sync &' (without quotes)
**2. once firefox has started up, run: gdb firefox-bin -p `pidof firefox-bin`
3. In gdb, add the command: break gdk_x_error
4. In firefox, visit the site that causes problems (reproduce the crash)
5. In the gdb window, it should have broken. You can then run 'thread apply all bt' to get a stacktrace

When doing so, you should have the firefox-dbg package installed. Thanks.

* The firefox script may pass the --sync parameter to the firefox-bin program, I'm not sure. I think it does.
** You may need to locate the firefox-bin program on you're system and run the command: <gdb /path/to/firefox-bin `pidof firefox-bin`> instead.

Revision history for this message
Oscar (osh-nbit) wrote :
Download full text (20.2 KiB)

Well aware that I know nothing about gdb, here's my first attempt. I've followed your instructions but I don't really see any useful output.

I answered yes to a question that I'm not sure I should have, however answering no to that question gives the same result, ie no backtrace (that I can see).

I have installed firefox-dbg before doing this.

osh@ardbeg:~$ firefox --sync &
[1] 25784
osh@ardbeg:~$ gdb /usr/lib/firefox/firefox-bin -p 25784
GNU gdb 6.4.90-debian
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i486-linux-gnu"...Using host libthread_db library "/lib/tls/i686/cmov/libthread_db.so.1".

Attaching to program: /usr/lib/firefox/firefox-bin, process 25784
Reading symbols from /usr/lib/firefox/libmozjs.so...Reading symbols from /usr/lib/debug/usr/lib/firefox/libmozjs.so...done.
done.
Loaded symbols for /usr/lib/firefox/libmozjs.so
Reading symbols from /usr/lib/firefox/libxpcom.so...Reading symbols from /usr/lib/debug/usr/lib/firefox/libxpcom.so...done.
done.
Loaded symbols for /usr/lib/firefox/libxpcom.so
Reading symbols from /usr/lib/firefox/libxpcom_core.so...Reading symbols from /usr/lib/debug/usr/lib/firefox/libxpcom_core.so...done.
done.
Loaded symbols for /usr/lib/firefox/libxpcom_core.so
Reading symbols from /usr/lib/libplc4.so...Reading symbols from /usr/lib/debug/usr/lib/libplc4.so...done.
done.
Loaded symbols for /usr/lib/libplc4.so
Reading symbols from /usr/lib/libnspr4.so...Reading symbols from /usr/lib/debug/usr/lib/libnspr4.so...done.
done.
Loaded symbols for /usr/lib/libnspr4.so
Reading symbols from /lib/tls/i686/cmov/libpthread.so.0...done.
[Thread debugging using libthread_db enabled]
[New Thread -1220437120 (LWP 25784)]
[New Thread -1341588576 (LWP 25827)]
[New Thread -1332671584 (LWP 25823)]
[New Thread -1305011296 (LWP 25822)]
[New Thread -1313404000 (LWP 25818)]
[New Thread -1296618592 (LWP 25813)]
[New Thread -1286161504 (LWP 25809)]
[New Thread -1277768800 (LWP 25808)]
[New Thread -1269376096 (LWP 25807)]
[New Thread -1260639328 (LWP 25802)]
[New Thread -1242928224 (LWP 25799)]
[New Thread -1223443552 (LWP 25787)]
Loaded symbols for /lib/tls/i686/cmov/libpthread.so.0
Reading symbols from /usr/lib/libgtk-x11-2.0.so.0...done.
Loaded symbols for /usr/lib/libgtk-x11-2.0.so.0
Reading symbols from /usr/lib/libgdk-x11-2.0.so.0...done.
Loaded symbols for /usr/lib/libgdk-x11-2.0.so.0
Reading symbols from /usr/lib/libX11.so.6...done.
Loaded symbols for /usr/lib/libX11.so.6
Reading symbols from /usr/lib/libstdc++.so.6...done.
Loaded symbols for /usr/lib/libstdc++.so.6
Reading symbols from /lib/tls/i686/cmov/libc.so.6...done.
Loaded symbols for /lib/tls/i686/cmov/libc.so.6
Reading symbols from /lib/tls/i686/cmov/libm.so.6...done.
Loaded symbols for /lib/tls/i686/cmov/libm.so.6
Reading symbols from /usr/lib/libplds4.so...Reading symbols from /usr/lib/debug/usr/lib/libplds4.so...done.
done.
Loaded symbols for /usr/lib/libplds4....

Revision history for this message
Don Scorgie (don-scorgie) wrote :

Hi. I can't reproduce the bug here.

However, I have some new steps to try and create a useful stacktrace, if you're still experiencing the problem.

1. Make sure you have libgtk2.0-0-dbg and libgtk2.0-0-dev installed (Don't think the -dev is required)
2. from a terminal run:
firefox -g
This should dump you to a gdb prompt
3. from the gdb prompt, run 'set args -a firefox --sync'
4. from the gdb prompt, run 'break gdk_x_error' (press y to the question)
5. from the gdb prompt, run 'run'
6. reproduce the crash in the window (it will take a while to appear)
7. Hopefully (with libgtk2-dbg installed) it will find the gdk_x_error function and break on it properly
8. If it does so, you can then run 'thread apply all bt' to get a decent stacktrace.

Thanks.

Revision history for this message
Tomasz Czapiewski (xeros) wrote :

It looks as bug #14911.
Oscar, are you sure you don't have flashplugin?
Maybe some files were keept after the package was removed.
Look at directories:
/usr/lib/firefox/plugins/ and /usr/lib/mozilla/plugins/
for flashplayer.xpt and libflashplayer.so files.
Do you have 16bit display?

Revision history for this message
Oscar (osh-nbit) wrote :

Might actually be bug 14911. Trying one of the hints from that bugreport XLIB_SKIP_ARGB_VISUALS=1 firefox, did the trick. I can now go to all pages that didn't work before.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.