Closed Bug 439214 Opened 16 years ago Closed 16 years ago

[FIX]Lockup in nsXMLHttpRequest::Send() before any data is sent over the network.

Categories

(Core :: DOM: Core & HTML, defect)

x86
Linux
defect
Not set
major

Tracking

()

RESOLVED FIXED

People

(Reporter: vesselin.atanasov, Assigned: bzbarsky)

Details

(Keywords: hang)

Attachments

(1 file)

User-Agent:       Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.14) Gecko/20080416 Fedora/2.0.0.14-1.fc8 Firefox/2.0.0.14
Build Identifier: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.14) Gecko/20080416 Fedora/2.0.0.14-1.fc8 Firefox/2.0.0.14

Firefox 2.0.0.14 locks in when making synchronous requests. I know that the UI should be frozen while FF performs synchronous requests until the request is complete. However in this case the lock-up occurs before Firefox even tries to send any traffic over the network - I am watching the network with tcpdump, so Firefox does not send anything ove the network. I waited for 15-20 minutes for FF to recover but it just stayed frozen.

It seems that the lock-up occurs when XMLHttpRequest.send() is called from inside a Comet handler for server-side events. The lock-up only occurs when re-using the XMLHttpRequest object. If a new XMLHttpRequest object is created for each AJAX request, then the lock-up does not occur.

In the additional information section I attach a GDB session for the locked-up browser.

As it can be seen from debug.txt, the lockup occurs in:
nsXMLHttpRequest::Send (this=0xc4438e0, aBody=0xcd3bea0) in nsXMLHttpRequest.cpp:1725

The source code for nsXMLHttpRequest.cpp is available at:
http://mxr.mozilla.org/mozilla1.8/source/content/base/src/nsXMLHttpRequest.cpp

The lock-up occurs in the following piece of code:

1718   // If we're synchronous, spin an event loop here and wait
1719   if (!(mState & XML_HTTP_REQUEST_ASYNC)) {
1720     while (mState & XML_HTTP_REQUEST_SYNCLOOPING) {
1721       modalEventQueue->ProcessPendingEvents();
1722
1723       // Be sure not to busy wait! (see bug 273578)
1724       if (mState & XML_HTTP_REQUEST_SYNCLOOPING)
1725         PR_Sleep(PR_MillisecondsToInterval(10));
1726     }
1727
1728     mEventQService->PopThreadEventQueue(modalEventQueue);
1729   } else {

When the lockup occurs mState has the value 2177 (0x0881)
which is effectively:

XML_HTTP_REQUEST_UNINITIALIZED |
XML_HTTP_REQUEST_ABORTED |
XML_HTTP_REQUEST_SYNCLOOPING

It seems that while performing the call to
nsXMLHttpRequest::Send(nsIVariant *aBody)

somehow
NS_IMETHODIMP nsXMLHttpRequest::Abort()
has been invoked, and since that method does not clear the:
XML_HTTP_REQUEST_SYNCLOOPING flag, the code loops forever.

The lockup does not occur always. It often occurs after 2-3 synchronous requests  re-using the same XmlHttpRequest object. Sometimes it takes 10-15 requestsfor the lockup to occur. Each XmlHttpRequest must be performed from within the Comet handler.

Reproducible: Sometimes

Steps to Reproduce:
1. Create a Comet (HTTP streaming handler for server-side events).
2. Using the Comet connection send some javascript code from the server to the browser.
3. In that js code make a synchronous XmlHttpRquest to the same server.

Actual Results:  
The Firefox browser locks up forever.

Expected Results:  
The synchronous request should be completed successfully or an error event should be fired

[?1034hGNU gdb Red Hat Linux (6.6-45.fc8rh)
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 "i386-redhat-linux-gnu"...
Using host libthread_db library "/lib/libthread_db.so.1".
Attaching to program: /usr/lib/firefox-2.0.0.14/firefox-bin, process 22152
Reading symbols from /usr/lib/firefox-2.0.0.14/libmozjs.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/libmozjs.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/libmozjs.so
Reading symbols from /usr/lib/firefox-2.0.0.14/libxpcom.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/libxpcom.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/libxpcom.so
Reading symbols from /usr/lib/firefox-2.0.0.14/libxpcom_core.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/libxpcom_core.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/libxpcom_core.so
Reading symbols from /usr/lib/libplds4.so...Reading symbols from /usr/lib/debug/usr/lib/libplds4.so.debug...done.
done.
Loaded symbols for /usr/lib/libplds4.so
Reading symbols from /usr/lib/libplc4.so...Reading symbols from /usr/lib/debug/usr/lib/libplc4.so.debug...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.debug...done.
done.
Loaded symbols for /usr/lib/libnspr4.so
Reading symbols from /lib/libpthread.so.0...Reading symbols from /usr/lib/debug/lib/libpthread-2.7.so.debug...done.
[Thread debugging using libthread_db enabled]
[New Thread -1208678704 (LWP 22152)]
[New Thread -1286345840 (LWP 22162)]
[New Thread -1265366128 (LWP 22158)]
[New Thread -1253975152 (LWP 22157)]
[New Thread -1243485296 (LWP 22156)]
[New Thread -1221268592 (LWP 22154)]
[New Thread -1210778736 (LWP 22153)]
done.
Loaded symbols for /lib/libpthread.so.0
Reading symbols from /lib/libdl.so.2...Reading symbols from /usr/lib/debug/lib/libdl-2.7.so.debug...done.
done.
Loaded symbols for /lib/libdl.so.2
Reading symbols from /usr/lib/libgtk-x11-2.0.so.0...Reading symbols from /usr/lib/debug/usr/lib/libgtk-x11-2.0.so.0.1200.8.debug...done.
done.
Loaded symbols for /usr/lib/libgtk-x11-2.0.so.0
Reading symbols from /usr/lib/libgdk-x11-2.0.so.0...Reading symbols from /usr/lib/debug/usr/lib/libgdk-x11-2.0.so.0.1200.8.debug...done.
done.
Loaded symbols for /usr/lib/libgdk-x11-2.0.so.0
Reading symbols from /usr/lib/libatk-1.0.so.0...Reading symbols from /usr/lib/debug/usr/lib/libatk-1.0.so.0.2009.1.debug...done.
done.
Loaded symbols for /usr/lib/libatk-1.0.so.0
Reading symbols from /usr/lib/libgdk_pixbuf-2.0.so.0...Reading symbols from /usr/lib/debug/usr/lib/libgdk_pixbuf-2.0.so.0.1200.8.debug...done.
done.
Loaded symbols for /usr/lib/libgdk_pixbuf-2.0.so.0
Reading symbols from /usr/lib/libpangocairo-1.0.so.0...Reading symbols from /usr/lib/debug/usr/lib/libpangocairo-1.0.so.0.1800.4.debug...done.
done.
Loaded symbols for /usr/lib/libpangocairo-1.0.so.0
Reading symbols from /usr/lib/libpango-1.0.so.0...Reading symbols from /usr/lib/debug/usr/lib/libpango-1.0.so.0.1800.4.debug...done.
done.
Loaded symbols for /usr/lib/libpango-1.0.so.0
Reading symbols from /usr/lib/libcairo.so.2...Reading symbols from /usr/lib/debug/usr/lib/libcairo.so.2.11.7.debug...done.
done.
Loaded symbols for /usr/lib/libcairo.so.2
Reading symbols from /lib/libgobject-2.0.so.0...Reading symbols from /usr/lib/debug/lib/libgobject-2.0.so.0.1400.6.debug...done.
done.
Loaded symbols for /lib/libgobject-2.0.so.0
Reading symbols from /lib/libgmodule-2.0.so.0...Reading symbols from /usr/lib/debug/lib/libgmodule-2.0.so.0.1400.6.debug...done.
done.
Loaded symbols for /lib/libgmodule-2.0.so.0
Reading symbols from /lib/libglib-2.0.so.0...Reading symbols from /usr/lib/debug/lib/libglib-2.0.so.0.1400.6.debug...done.
done.
Loaded symbols for /lib/libglib-2.0.so.0
Reading symbols from /usr/lib/libX11.so.6...Reading symbols from /usr/lib/debug/usr/lib/libX11.so.6.2.0.debug...done.
done.
Loaded symbols for /usr/lib/libX11.so.6
Reading symbols from /lib/libgthread-2.0.so.0...Reading symbols from /usr/lib/debug/lib/libgthread-2.0.so.0.1400.6.debug...done.
done.
Loaded symbols for /lib/libgthread-2.0.so.0
Reading symbols from /usr/lib/libstdc++.so.6...Reading symbols from /usr/lib/debug/usr/lib/libstdc++.so.6.0.8.debug...done.
done.
Loaded symbols for /usr/lib/libstdc++.so.6
Reading symbols from /lib/libm.so.6...Reading symbols from /usr/lib/debug/lib/libm-2.7.so.debug...done.
done.
Loaded symbols for /lib/libm.so.6
Reading symbols from /lib/libgcc_s.so.1...Reading symbols from /usr/lib/debug/lib/libgcc_s-4.1.2-20070925.so.1.debug...done.
done.
Loaded symbols for /lib/libgcc_s.so.1
Reading symbols from /lib/libc.so.6...Reading symbols from /usr/lib/debug/lib/libc-2.7.so.debug...done.
done.
Loaded symbols for /lib/libc.so.6
Reading symbols from /lib/ld-linux.so.2...Reading symbols from /usr/lib/debug/lib/ld-2.7.so.debug...done.
done.
Loaded symbols for /lib/ld-linux.so.2
Reading symbols from /usr/lib/libXcomposite.so.1...done.
Loaded symbols for /usr/lib/libXcomposite.so.1
Reading symbols from /usr/lib/libXfixes.so.3...done.
Loaded symbols for /usr/lib/libXfixes.so.3
Reading symbols from /usr/lib/libpng12.so.0...Reading symbols from /usr/lib/debug/usr/lib/libpng12.so.0.29.0.debug...done.
done.
Loaded symbols for /usr/lib/libpng12.so.0
Reading symbols from /usr/lib/libfontconfig.so.1...Reading symbols from /usr/lib/debug/usr/lib/libfontconfig.so.1.2.0.debug...done.
done.
Loaded symbols for /usr/lib/libfontconfig.so.1
Reading symbols from /usr/lib/libXext.so.6...done.
Loaded symbols for /usr/lib/libXext.so.6
Reading symbols from /usr/lib/libXrender.so.1...Reading symbols from /usr/lib/debug/usr/lib/libXrender.so.1.3.0.debug...done.
done.
Loaded symbols for /usr/lib/libXrender.so.1
Reading symbols from /usr/lib/libXinerama.so.1...Reading symbols from /usr/lib/debug/usr/lib/libXinerama.so.1.0.0.debug...done.
done.
Loaded symbols for /usr/lib/libXinerama.so.1
Reading symbols from /usr/lib/libXi.so.6...done.
Loaded symbols for /usr/lib/libXi.so.6
Reading symbols from /usr/lib/libXrandr.so.2...done.
Loaded symbols for /usr/lib/libXrandr.so.2
Reading symbols from /usr/lib/libXcursor.so.1...done.
Loaded symbols for /usr/lib/libXcursor.so.1
Reading symbols from /usr/lib/libpangoft2-1.0.so.0...Reading symbols from /usr/lib/debug/usr/lib/libpangoft2-1.0.so.0.1800.4.debug...done.
done.
Loaded symbols for /usr/lib/libpangoft2-1.0.so.0
Reading symbols from /usr/lib/libfreetype.so.6...Reading symbols from /usr/lib/debug/usr/lib/libfreetype.so.6.3.16.debug...done.
done.
Loaded symbols for /usr/lib/libfreetype.so.6
Reading symbols from /lib/libz.so.1...Reading symbols from /usr/lib/debug/lib/libz.so.1.2.3.debug...done.
done.
Loaded symbols for /lib/libz.so.1
Reading symbols from /usr/lib/libxcb-xlib.so.0...done.
Loaded symbols for /usr/lib/libxcb-xlib.so.0
Reading symbols from /usr/lib/libxcb.so.1...done.
Loaded symbols for /usr/lib/libxcb.so.1
Reading symbols from /lib/librt.so.1...Reading symbols from /usr/lib/debug/lib/librt-2.7.so.debug...done.
done.
Loaded symbols for /lib/librt.so.1
Reading symbols from /lib/libexpat.so.1...done.
Loaded symbols for /lib/libexpat.so.1
Reading symbols from /usr/lib/libXau.so.6...done.
Loaded symbols for /usr/lib/libXau.so.6
Reading symbols from /usr/lib/libXdmcp.so.6...done.
Loaded symbols for /usr/lib/libXdmcp.so.6
Reading symbols from /usr/lib/gconv/UTF-16.so...Reading symbols from /usr/lib/debug/usr/lib/gconv/UTF-16.so.debug...done.
done.
Loaded symbols for /usr/lib/gconv/UTF-16.so
Reading symbols from /lib/libnss_files.so.2...Reading symbols from /usr/lib/debug/lib/libnss_files-2.7.so.debug...done.
done.
Loaded symbols for /lib/libnss_files.so.2
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libbrowserdirprovider.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libbrowserdirprovider.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libbrowserdirprovider.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libmyspell.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libmyspell.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libmyspell.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libchrome.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libchrome.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libchrome.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libpref.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libpref.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libpref.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libnecko.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libnecko.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libnecko.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libi18n.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libi18n.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libi18n.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libxpconnect.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libxpconnect.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libxpconnect.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libjar50.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libjar50.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libjar50.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libwidget_gtk2.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libwidget_gtk2.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libwidget_gtk2.so
Reading symbols from /usr/lib/firefox-2.0.0.14/libgkgfx.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/libgkgfx.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/libgkgfx.so
Reading symbols from /usr/lib/firefox-2.0.0.14/libgtkxtbin.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/libgtkxtbin.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/libgtkxtbin.so
Reading symbols from /usr/lib/libXt.so.6...Reading symbols from /usr/lib/debug/usr/lib/libXt.so.6.0.0.debug...done.
done.
Loaded symbols for /usr/lib/libXt.so.6
Reading symbols from /usr/lib/libSM.so.6...Reading symbols from /usr/lib/debug/usr/lib/libSM.so.6.0.0.debug...done.
done.
Loaded symbols for /usr/lib/libSM.so.6
Reading symbols from /usr/lib/libICE.so.6...Reading symbols from /usr/lib/debug/usr/lib/libICE.so.6.3.0.debug...done.
done.
Loaded symbols for /usr/lib/libICE.so.6
Reading symbols from /usr/lib/gtk-2.0/2.10.0/engines/libnodoka.so...done.
Loaded symbols for /usr/lib/gtk-2.0/2.10.0/engines/libnodoka.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libtoolkitcomps.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libtoolkitcomps.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libtoolkitcomps.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libembedcomponents.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libembedcomponents.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libembedcomponents.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libcaps.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libcaps.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libcaps.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/librdf.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/librdf.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/librdf.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libjsd.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libjsd.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libjsd.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libdocshell.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libdocshell.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libdocshell.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libsystem-pref.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libsystem-pref.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libsystem-pref.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libappcomps.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libappcomps.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libappcomps.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libnsappshell.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libnsappshell.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libnsappshell.so
Reading symbols from /usr/lib/libgconf-2.so.4...Reading symbols from /usr/lib/debug/usr/lib/libgconf-2.so.4.1.2.debug...done.
done.
Loaded symbols for /usr/lib/libgconf-2.so.4
Reading symbols from /usr/lib/libORBit-2.so.0...Reading symbols from /usr/lib/debug/usr/lib/libORBit-2.so.0.1.0.debug...done.
done.
Loaded symbols for /usr/lib/libORBit-2.so.0
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libgklayout.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libgklayout.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libgklayout.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libimglib2.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libimglib2.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libimglib2.so
Reading symbols from /usr/lib/libjpeg.so.62...Reading symbols from /usr/lib/debug/usr/lib/libjpeg.so.62.0.0.debug...done.
done.
Loaded symbols for /usr/lib/libjpeg.so.62
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libcommandlines.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libcommandlines.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libcommandlines.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libgfx_gtk.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libgfx_gtk.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libgfx_gtk.so
Reading symbols from /usr/lib/libXft.so.2...Reading symbols from /usr/lib/debug/usr/lib/libXft.so.2.1.2.debug...done.
done.
Loaded symbols for /usr/lib/libXft.so.2
Reading symbols from /usr/lib/firefox-2.0.0.14/libgfxpsshar.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/libgfxpsshar.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/libgfxpsshar.so
Reading symbols from /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so...Reading symbols from /usr/lib/debug/usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so.debug...done.
done.
Loaded symbols for /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so
Reading symbols from /usr/lib/libgnome-2.so.0...Reading symbols from /usr/lib/debug/usr/lib/libgnome-2.so.0.2000.1.debug...done.
done.
Loaded symbols for /usr/lib/libgnome-2.so.0
Reading symbols from /usr/lib/libgnomevfs-2.so.0...Reading symbols from /usr/lib/debug/usr/lib/libgnomevfs-2.so.0.2000.1.debug...done.
done.
Loaded symbols for /usr/lib/libgnomevfs-2.so.0
Reading symbols from /usr/lib/libbonobo-2.so.0...Reading symbols from /usr/lib/debug/usr/lib/libbonobo-2.so.0.0.0.debug...done.
done.
Loaded symbols for /usr/lib/libbonobo-2.so.0
Reading symbols from /usr/lib/libbonobo-activation.so.4...Reading symbols from /usr/lib/debug/usr/lib/libbonobo-activation.so.4.0.0.debug...done.
done.
Loaded symbols for /usr/lib/libbonobo-activation.so.4
Reading symbols from /usr/lib/libesd.so.0...done.
Loaded symbols for /usr/lib/libesd.so.0
Reading symbols from /usr/lib/libaudiofile.so.0...done.
Loaded symbols for /usr/lib/libaudiofile.so.0
Reading symbols from /lib/libpopt.so.0...Reading symbols from /usr/lib/debug/lib/libpopt.so.0.0.0.debug...done.
done.
Loaded symbols for /lib/libpopt.so.0
Reading symbols from /usr/lib/libxml2.so.2...done.
Loaded symbols for /usr/lib/libxml2.so.2
Reading symbols from /usr/lib/libdbus-glib-1.so.2...done.
Loaded symbols for /usr/lib/libdbus-glib-1.so.2
Reading symbols from /lib/libdbus-1.so.3...done.
Loaded symbols for /lib/libdbus-1.so.3
Reading symbols from /lib/libssl.so.6...done.
Loaded symbols for /lib/libssl.so.6
Reading symbols from /lib/libcrypto.so.6...done.
Loaded symbols for /lib/libcrypto.so.6
Reading symbols from /usr/lib/libavahi-glib.so.1...done.
Loaded symbols for /usr/lib/libavahi-glib.so.1
Reading symbols from /usr/lib/libavahi-common.so.3...done.
Loaded symbols for /usr/lib/libavahi-common.so.3
Reading symbols from /usr/lib/libavahi-client.so.3...done.
Loaded symbols for /usr/lib/libavahi-client.so.3
Reading symbols from /lib/libresolv.so.2...Reading symbols from /usr/lib/debug/lib/libresolv-2.7.so.debug...done.
done.
Loaded symbols for /lib/libresolv.so.2
Reading symbols from /lib/libselinux.so.1...done.
Loaded symbols for /lib/libselinux.so.1
Reading symbols from /lib/libutil.so.1...Reading symbols from /usr/lib/debug/lib/libutil-2.7.so.debug...done.
done.
Loaded symbols for /lib/libutil.so.1
Reading symbols from /usr/lib/libORBitCosNaming-2.so.0...Reading symbols from /usr/lib/debug/usr/lib/libORBitCosNaming-2.so.0.1.0.debug...done.
done.
Loaded symbols for /usr/lib/libORBitCosNaming-2.so.0
Reading symbols from /lib/libasound.so.2...done.
Loaded symbols for /lib/libasound.so.2
Reading symbols from /lib/libnsl.so.1...Reading symbols from /usr/lib/debug/lib/libnsl-2.7.so.debug...done.
done.
Loaded symbols for /lib/libnsl.so.1
Reading symbols from /lib/libcap.so.1...done.
Loaded symbols for /lib/libcap.so.1
Reading symbols from /usr/lib/libgssapi_krb5.so.2...done.
Loaded symbols for /usr/lib/libgssapi_krb5.so.2
Reading symbols from /usr/lib/libkrb5.so.3...done.
Loaded symbols for /usr/lib/libkrb5.so.3
Reading symbols from /lib/libcom_err.so.2...done.
Loaded symbols for /lib/libcom_err.so.2
Reading symbols from /usr/lib/libk5crypto.so.3...done.
Loaded symbols for /usr/lib/libk5crypto.so.3
Reading symbols from /usr/lib/libkrb5support.so.0...done.
Loaded symbols for /usr/lib/libkrb5support.so.0
Reading symbols from /lib/libkeyutils.so.1...done.
Loaded symbols for /lib/libkeyutils.so.1
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libwebbrwsr.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libwebbrwsr.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libwebbrwsr.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libpermissions.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libpermissions.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libpermissions.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libcookie.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libcookie.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libcookie.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libpipboot.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libpipboot.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libpipboot.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/liboji.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/liboji.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/liboji.so
Reading symbols from /usr/lib/firefox-2.0.0.14/libjsj.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/libjsj.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/libjsj.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libuconv.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libuconv.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libuconv.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libremoteservice.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libremoteservice.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libremoteservice.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libhtmlpars.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libhtmlpars.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libhtmlpars.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libbrowsercomps.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libbrowsercomps.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libbrowsercomps.so
Reading symbols from /usr/lib/firefox-2.0.0.14/libxpcom_compat.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/libxpcom_compat.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/libxpcom_compat.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libuniversalchardet.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libuniversalchardet.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libuniversalchardet.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libpipnss.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libpipnss.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libpipnss.so
Reading symbols from /usr/lib/libssl3.so...Reading symbols from /usr/lib/debug/usr/lib/libssl3.so.debug...done.
done.
Loaded symbols for /usr/lib/libssl3.so
Reading symbols from /usr/lib/libsmime3.so...Reading symbols from /usr/lib/debug/usr/lib/libsmime3.so.debug...done.
done.
Loaded symbols for /usr/lib/libsmime3.so
Reading symbols from /usr/lib/libnss3.so...Reading symbols from /usr/lib/debug/usr/lib/libnss3.so.debug...done.
done.
Loaded symbols for /usr/lib/libnss3.so
Reading symbols from /usr/lib/libsoftokn3.so...Reading symbols from /usr/lib/debug/usr/lib/libsoftokn3.so.debug...done.
done.
Loaded symbols for /usr/lib/libsoftokn3.so
Reading symbols from /usr/lib/libfreebl3.so...Reading symbols from /usr/lib/debug/usr/lib/libfreebl3.so.debug...done.
done.
Loaded symbols for /usr/lib/libfreebl3.so
Reading symbols from /usr/lib/libnssckbi.so...Reading symbols from /usr/lib/debug/usr/lib/libnssckbi.so.debug...done.
done.
Loaded symbols for /usr/lib/libnssckbi.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libeditor.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libeditor.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libeditor.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libtxmgr.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libtxmgr.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libtxmgr.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libspellchecker.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libspellchecker.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libspellchecker.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libcomposer.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libcomposer.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libcomposer.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libimgicon.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libimgicon.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libimgicon.so
Reading symbols from /usr/lib/libgnomeui-2.so.0...Reading symbols from /usr/lib/debug/usr/lib/libgnomeui-2.so.0.2000.1.debug...done.
done.
Loaded symbols for /usr/lib/libgnomeui-2.so.0
Reading symbols from /usr/lib/libbonoboui-2.so.0...Reading symbols from /usr/lib/debug/usr/lib/libbonoboui-2.so.0.0.0.debug...done.
done.
Loaded symbols for /usr/lib/libbonoboui-2.so.0
Reading symbols from /usr/lib/libgnomecanvas-2.so.0...Reading symbols from /usr/lib/debug/usr/lib/libgnomecanvas-2.so.0.1998.3.debug...done.
done.
Loaded symbols for /usr/lib/libgnomecanvas-2.so.0
Reading symbols from /usr/lib/libart_lgpl_2.so.2...Reading symbols from /usr/lib/debug/usr/lib/libart_lgpl_2.so.2.3.19.debug...done.
done.
Loaded symbols for /usr/lib/libart_lgpl_2.so.2
Reading symbols from /usr/lib/libgnome-keyring.so.0...done.
Loaded symbols for /usr/lib/libgnome-keyring.so.0
Reading symbols from /usr/lib/libgailutil.so.18...done.
Loaded symbols for /usr/lib/libgailutil.so.18
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libstoragecomps.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libstoragecomps.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libstoragecomps.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libnecko2.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libnecko2.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libnecko2.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libmozgnome.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libmozgnome.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libmozgnome.so
Reading symbols from /usr/lib/firefox-2.0.0.14/components/libmork.so...Reading symbols from /usr/lib/debug/usr/lib/firefox-2.0.0.14/components/libmork.so.debug...done.
done.
Loaded symbols for /usr/lib/firefox-2.0.0.14/components/libmork.so
Reading symbols from /lib/libnss_dns.so.2...Reading symbols from /usr/lib/debug/lib/libnss_dns-2.7.so.debug...done.
done.
Loaded symbols for /lib/libnss_dns.so.2
0x00110416 in __kernel_vsyscall ()
(gdb) bt
#0  0x00110416 in __kernel_vsyscall ()
#1  0x006c9902 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0x004a0336 in pt_TimedWait (cv=0xcb4932c, ml=0x947a448, timeout=10) at ../../../mozilla/nsprpub/pr/src/pthreads/ptsynch.c:280
#3  0x004a1174 in PR_WaitCondVar (cvar=0xcb49328, timeout=10) at ../../../mozilla/nsprpub/pr/src/pthreads/ptsynch.c:407
#4  0x004a6cdf in PR_Sleep (ticks=10) at ../../../mozilla/nsprpub/pr/src/pthreads/ptthread.c:791
#5  0x01194ae7 in nsXMLHttpRequest::Send (this=0xc4438e0, aBody=0xcd3bea0) at nsXMLHttpRequest.cpp:1725
#6  0x0208e829 in XPTC_InvokeByIndex () at xptcinvoke_gcc_x86_unix.cpp:50
#7  0x003ace04 in XPCWrappedNative::CallMethod (ccx=@0xbff74a1c, mode=XPCWrappedNative::CALL_METHOD) at xpcwrappednative.cpp:2169
#8  0x003b3bce in XPC_WN_CallMethod (cx=0xbd381c8, obj=0xb030170, argc=1, argv=0xcc37df4, vp=0xbff74b40) at xpcwrappednativejsops.cpp:1455
#9  0x0018f215 in js_Invoke (cx=0xbd381c8, argc=1, flags=0) at jsinterp.c:1384
#10 0x00191307 in js_Interpret (cx=0xbd381c8, pc=0xbce022b "=", result=0xbff74eb8) at jsinterp.c:3953
#11 0x0018f970 in js_Invoke (cx=0xbd381c8, argc=3, flags=6) at jsinterp.c:1403
#12 0x001890dd in fun_call (cx=0xbd381c8, obj=0xcca36d0, argc=3, argv=0xcc37c70, rval=0xbff74fb0) at jsfun.c:1609
#13 0x0018f215 in js_Invoke (cx=0xbd381c8, argc=4, flags=0) at jsinterp.c:1384
#14 0x00191307 in js_Interpret (cx=0xbd381c8, pc=0xc747cf6 "<", result=0xbff75328) at jsinterp.c:3953
#15 0x0018f970 in js_Invoke (cx=0xbd381c8, argc=1, flags=2) at jsinterp.c:1403
#16 0x003a969d in nsXPCWrappedJSClass::CallMethod (this=0x9a7e0a0, wrapper=0xc76e810, methodIndex=3, info=0x97bca48, nativeParams=0xbff7563c)
    at xpcwrappedjsclass.cpp:1453
#17 0x003a3fe3 in nsXPCWrappedJS::CallMethod (this=0xc76e810, methodIndex=3, info=0x97bca48, params=0xbff7563c) at xpcwrappedjs.cpp:467
#18 0x0208f3f1 in PrepareAndDispatch (methodIndex=<value optimized out>, self=0xc76e810, args=<value optimized out>) at xptcstubs_gcc_x86_unix.cpp:100
#19 0x011a1de2 in nsEventListenerManager::HandleEventSubType (this=0xc76e840, aListenerStruct=0xc69d868, aListener=0xc76e810, aDOMEvent=0xccc3b90,
    aCurrentTarget=0xc672b10, aSubType=4, aPhaseFlags=2) at nsEventListenerManager.cpp:1655
#20 0x011a23f1 in nsEventListenerManager::HandleEvent (this=0xc76e840, aPresContext=0xb00ee10, aEvent=0xbff7602c, aDOMEvent=0xbff75ed4,
    aCurrentTarget=0xc672b10, aFlags=2, aEventStatus=0xbff764d0) at nsEventListenerManager.cpp:1759
#21 0x01167595 in nsGenericElement::HandleDOMEvent (this=0xc629778, aPresContext=0xb00ee10, aEvent=0xbff7602c, aDOMEvent=0xbff75ed4, aFlags=2,
    aEventStatus=0xbff764d0) at nsGenericElement.cpp:2232
#22 0x0116779d in nsGenericElement::HandleDOMEvent (this=0xcdd2610, aPresContext=0xb00ee10, aEvent=0xbff7602c, aDOMEvent=0xbff75ed4,
    aFlags=<value optimized out>, aEventStatus=0xbff764d0) at nsGenericElement.cpp:2261
#23 0x0116779d in nsGenericElement::HandleDOMEvent (this=0xc737f78, aPresContext=0xb00ee10, aEvent=0xbff7602c, aDOMEvent=0xbff75ed4,
    aFlags=<value optimized out>, aEventStatus=0xbff764d0) at nsGenericElement.cpp:2261
#24 0x0116779d in nsGenericElement::HandleDOMEvent (this=0xc69d010, aPresContext=0xb00ee10, aEvent=0xbff7602c, aDOMEvent=0xbff75ed4,
    aFlags=<value optimized out>, aEventStatus=0xbff764d0) at nsGenericElement.cpp:2261
#25 0x0116779d in nsGenericElement::HandleDOMEvent (this=0xc69cfa0, aPresContext=0xb00ee10, aEvent=0xbff7602c, aDOMEvent=0xbff75ed4,
    aFlags=<value optimized out>, aEventStatus=0xbff764d0) at nsGenericElement.cpp:2261
#26 0x0116779d in nsGenericElement::HandleDOMEvent (this=0xc69d3c0, aPresContext=0xb00ee10, aEvent=0xbff7602c, aDOMEvent=0xbff75ed4,
    aFlags=<value optimized out>, aEventStatus=0xbff764d0) at nsGenericElement.cpp:2261
#27 0x00f977f1 in PresShell::HandleEventInternal (this=0xb3274b0, aEvent=0xbff7602c, aView=0x0, aFlags=1, aStatus=0xbff764d0) at nsPresShell.cpp:6523
#28 0x00f97d85 in PresShell::HandleEventWithTarget (this=0xb3274b0, aEvent=0xbff7602c, aFrame=0xc734568, aContent=0xc69d3c0, aFlags=1, aStatus=0xbff764d0)
    at nsPresShell.cpp:6419
#29 0x011a6332 in nsEventStateManager::CheckForAndDispatchClick (this=0xb00f0e0, aPresContext=0xb00ee10, aEvent=0xbff76670, aStatus=0xbff764d0)
    at nsEventStateManager.cpp:3206
#30 0x011ad169 in nsEventStateManager::PostHandleEvent (this=0xb00f0e0, aPresContext=0xb00ee10, aEvent=0xbff76670, aTargetFrame=0xc734568,
    aStatus=0xbff764d0, aView=0xc8610f8) at nsEventStateManager.cpp:2169
#31 0x00f97967 in PresShell::HandleEventInternal (this=0xb3274b0, aEvent=0xbff76670, aView=0xc8610f8, aFlags=513, aStatus=0xbff764d0)
    at nsPresShell.cpp:6595
#32 0x00f99d13 in PresShell::HandleEvent (this=0xb3274b0, aView=0xc8610f8, aEvent=0xbff76670, aEventStatus=0xbff764d0, aForceHandle=1,
    aHandled=@0xbff764c8) at nsPresShell.cpp:6358
#33 0x012b2029 in nsViewManager::HandleEvent (this=0xb00f6d0, aView=0xc8610f8, aEvent=0xbff76670, aCaptured=1) at nsViewManager.cpp:2564
#34 0x012b25a4 in nsViewManager::DispatchEvent (this=0xb00f6d0, aEvent=0xbff76670, aStatus=0xbff76630) at nsViewManager.cpp:2253
#35 0x012a5fe6 in HandleEvent (aEvent=0xbff76670) at nsView.cpp:171
#36 0x00409cbe in nsCommonWidget::DispatchEvent (this=0xc43e500, aEvent=0xbff76670, aStatus=@0xbff766b8) at nsCommonWidget.cpp:219
#37 0x00406cf6 in nsWindow::OnButtonReleaseEvent (this=0xc43e500, aWidget=0x978a258, aEvent=0x9498780) at nsWindow.cpp:1724
#38 0x00406d5b in button_release_event_cb (widget=0x978a258, event=0x9498780) at nsWindow.cpp:3921
#39 0x05a43434 in _gtk_marshal_BOOLEAN__BOXED (closure=0x98912d8, return_value=0xbff76860, n_param_values=2, param_values=0xbff7693c,
    invocation_hint=0xbff7684c, marshal_data=0x0) at gtkmarshalers.c:84
#40 0x0099ff83 in IA__g_closure_invoke (closure=0x98912d8, return_value=0xbff76860, n_param_values=2, param_values=0xbff7693c, invocation_hint=0xbff7684c)
    at gclosure.c:490
#41 0x009b048d in signal_emit_unlocked_R (node=0x95ab4e8, detail=0, instance=0x978a258, emission_return=0xbff76afc, instance_and_params=0xbff7693c)
    at gsignal.c:2440
#42 0x009b175f in IA__g_signal_emit_valist (instance=0x978a258, signal_id=30, detail=0, var_args=<value optimized out>) at gsignal.c:2209
#43 0x009b1b59 in IA__g_signal_emit (instance=0x978a258, signal_id=30, detail=0) at gsignal.c:2243
#44 0x05bcf494 in gtk_widget_event_internal (widget=0x978a258, event=0x9498780) at gtkwidget.c:4678
#45 0x05bcef98 in IA__gtk_widget_event (widget=0x978a258, event=0x9498780) at gtkwidget.c:4478
#46 0x05a417cb in IA__gtk_propagate_event (widget=0x978a258, event=0x9498780) at gtkmain.c:2336
#47 0x05a4010a in IA__gtk_main_do_event (event=0x9498780) at gtkmain.c:1556
#48 0x05d4260a in gdk_event_dispatch (source=0x9498978, callback=0, user_data=0x0) at gdkevents-x11.c:2351
#49 0x022021ac in IA__g_main_context_dispatch (context=0x949c8d0) at gmain.c:2061
#50 0x022055ef in g_main_context_iterate (context=0x949c8d0, block=1, dispatch=1, self=0x947b578) at gmain.c:2694
#51 0x02205999 in IA__g_main_loop_run (loop=0x99a55a0) at gmain.c:2898
#52 0x05a3f7ee in IA__gtk_main () at gtkmain.c:1163
#53 0x00408462 in nsAppShell::Run (this=0x95dca48) at nsAppShell.cpp:139
#54 0x00bec3f2 in nsAppStartup::Run (this=0x95dca08) at nsAppStartup.cpp:151
#55 0x0804f23c in XRE_main (argc=1, argv=0xbff77334, aAppData=0x80615e0) at nsAppRunner.cpp:2817
#56 0x0804abff in main (argc=) at nsBrowserApp.cpp:61
#57 0x00549390 in __libc_start_main (main=0x804abc0 <main>, argc=1, ubp_av=0xbff77334, init=0x805a4d0 <__libc_csu_init>,
    fini=0x805a4c0 <__libc_csu_fini>, rtld_fini=0x522940 <_dl_fini>, stack_end=0xbff7732c) at libc-start.c:220
#58 0x0804ab01 in _start ()
Missing separate debuginfos, use: debuginfo-install alsa-lib.i386 audiofile.i386 avahi.i386 dbus-glib.i386 dbus.i386 e2fsprogs.i386 esound.i386 expat.i386 gail.i386 gnome-keyring.i386 gtk-nodoka-engine.i386 keyutils.i386 krb5.i386 libXau.i386 libXcomposite.i386 libXcursor.i386 libXdmcp.i386 libXext.i386 libXfixes.i386 libXi.i386 libXrandr.i386 libcap.i386 libselinux.i386 libxcb.i386 libxml2.i386 openssl.i686
(gdb) frame 5
#5  0x01194ae7 in nsXMLHttpRequest::Send (this=0xc4438e0, aBody=0xcd3bea0) at nsXMLHttpRequest.cpp:1725
1725	        PR_Sleep(PR_MillisecondsToInterval(10));
(gdb) print method
$1 = {<nsFixedCString> = {<nsCString> = {<nsCSubstring> = {<nsACString_internal> = {mVTable = 0x20d5c08, mData = 0xbff74714 "POST", mLength = 4,
          mFlags = 65553}, <No data fields>}, <No data fields>}, mFixedCapacity = 63, mFixedBuf = 0xbff74714 "POST"},
  mStorage = "POST\000G���\vJ\000\200v \000����XG��W6\026\0008�R\t\r\000\000\000\210I��PG��\020%^\t��R\t\000\000\000\000\200v \000�\201�\v"}
(gdb) print mState
$2 = 2177
(gdb) print this
$3 = (nsXMLHttpRequest * const) 0xc4438e0
(gdb) q
The program is running.  Quit anyway (and detach it)? (y or n) Detaching from program: /usr/lib/firefox-2.0.0.14/firefox-bin, process 22152
Keywords: hang
Version: unspecified → 2.0 Branch
Status: UNCONFIRMED → NEW
Component: General → DOM: Mozilla Extensions
Ever confirmed: true
Product: Firefox → Core
QA Contact: general → general
Version: 2.0 Branch → Trunk
Attached patch Should fix thisSplinter Review
> somehow NS_IMETHODIMP nsXMLHttpRequest::Abort()
> has been invoked, and since that method does not clear the:
> XML_HTTP_REQUEST_SYNCLOOPING flag, the code loops forever.

Good catch!  That would indeed have just such an effect.

Attached patch should fix that problem.
Assignee: nobody → bzbarsky
Status: NEW → ASSIGNED
Attachment #334637 - Flags: superreview?(jst)
Attachment #334637 - Flags: review?(jst)
Summary: Lockup in nsXMLHttpRequest::Send() before any data is sent over the network. → [FIX]Lockup in nsXMLHttpRequest::Send() before any data is sent over the network.
Attachment #334637 - Flags: superreview?(jst)
Attachment #334637 - Flags: superreview+
Attachment #334637 - Flags: review?(jst)
Attachment #334637 - Flags: review+
Pushed changeset 799c3c643db1.  Vesselin, thanks for the excellent bug report!
Status: ASSIGNED → RESOLVED
Closed: 16 years ago
Resolution: --- → FIXED
Component: DOM: Mozilla Extensions → DOM
Component: DOM → DOM: Core & HTML
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: