Bug 210765 - konqueror freezes loading a PHP page including generated images
Summary: konqueror freezes loading a PHP page including generated images
Status: RESOLVED FIXED
Alias: None
Product: konqueror
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Unlisted Binaries Linux
: NOR crash
Target Milestone: ---
Assignee: Konqueror Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-10-16 10:00 UTC by Roman Fietze
Modified: 2010-05-03 15:39 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
Backtrace konqueror with appropriate debuginfo packages installed (6.15 KB, text/plain)
2009-10-18 11:53 UTC, Roman Fietze
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Roman Fietze 2009-10-16 10:00:12 UTC
Application that crashed: konqueror
Version of the application: 4.3.2 (KDE 4.3.2) "release 2"
KDE Version: 4.3.2 (KDE 4.3.2) "release 5"
Qt Version: 4.5.2
Operating System: Linux 2.6.27.29-0.1-default x86_64

What I was doing when the application crashed:
Konqueror constantly and repeatably freezes opening a certain PHP page containing many tables and images. While konqueror hangs, I cannot see any output from an attached strace. The freeze occures at different locations in the load process (0%, 25%, 50%).

When I save that page using Firefox to a HTML file, Firefox hereby also saves the images to a subdir and replaces the URLs inside the IMG tags, and open this one in the filesystem using konqueror it always works. When I move the files to an Apache directory and load those files via HTTP it also always works. When I user any other browser, including older versions of konqueror, even older 4.3.1 versions, it always works.

I had to force a backtrace using a SIGSEGV to the konqueror process. I had to use the openSUSE repositories/KDE:/43/openSUSE_Factory repo in order to get a debuginfo package for konqueror.



 -- Backtrace:
Application: Konqueror (kdeinit4), signal: Segmentation fault
[KCrash Handler]
#5  0x00007ffe003d2d4e in ?? () from /usr/lib64/libkhtml.so.5
#6  0x00007ffe003d329f in ?? () from /usr/lib64/libkhtml.so.5
#7  0x00007ffe002f2887 in ?? () from /usr/lib64/libkhtml.so.5
#8  0x00007ffe002fd839 in ?? () from /usr/lib64/libkhtml.so.5
#9  0x00007ffe0032eb5e in ?? () from /usr/lib64/libkhtml.so.5
#10 0x00007ffe003311a7 in ?? () from /usr/lib64/libkhtml.so.5
#11 0x00007ffe00331d54 in ?? () from /usr/lib64/libkhtml.so.5
#12 0x00007ffe0033889e in ?? () from /usr/lib64/libkhtml.so.5
#13 0x00007ffe0033b062 in ?? () from /usr/lib64/libkhtml.so.5
#14 0x00007ffe0028065d in KHTMLPart::write(char const*, int) () from /usr/lib64/libkhtml.so.5
#15 0x00007ffe002822b7 in KHTMLPart::slotData(KIO::Job*, QByteArray const&) () from /usr/lib64/libkhtml.so.5
#16 0x00007ffe002a2bc8 in KHTMLPart::qt_metacall(QMetaObject::Call, int, void**) () from /usr/lib64/libkhtml.so.5
#17 0x00007ffe1210e6e2 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib64/libQtCore.so.4
#18 0x00007ffe10fbf1f4 in KIO::TransferJob::data(KIO::Job*, QByteArray const&) () from /usr/lib64/libkio.so.5
#19 0x00007ffe10fc4b59 in KIO::TransferJob::qt_metacall(QMetaObject::Call, int, void**) () from /usr/lib64/libkio.so.5
#20 0x00007ffe1210e6e2 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib64/libQtCore.so.4
#21 0x00007ffe11083c62 in KIO::SlaveInterface::data(QByteArray const&) () from /usr/lib64/libkio.so.5
#22 0x00007ffe110874e8 in KIO::SlaveInterface::dispatch(int, QByteArray const&) () from /usr/lib64/libkio.so.5
#23 0x00007ffe11083f12 in KIO::SlaveInterface::dispatch() () from /usr/lib64/libkio.so.5
#24 0x00007ffe11076a73 in KIO::Slave::gotInput() () from /usr/lib64/libkio.so.5
#25 0x00007ffe11078cd8 in KIO::Slave::qt_metacall(QMetaObject::Call, int, void**) () from /usr/lib64/libkio.so.5
#26 0x00007ffe1210e6e2 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib64/libQtCore.so.4
#27 0x00007ffe10f92441 in ?? () from /usr/lib64/libkio.so.5
#28 0x00007ffe10f9289a in KIO::Connection::qt_metacall(QMetaObject::Call, int, void**) () from /usr/lib64/libkio.so.5
#29 0x00007ffe121098a8 in QObject::event(QEvent*) () from /usr/lib64/libQtCore.so.4
#30 0x00007ffe0f493abd in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#31 0x00007ffe0f49bd4a in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#32 0x00007ffe1057dd1b in KApplication::notify(QObject*, QEvent*) () from /usr/lib64/libkdeui.so.5
#33 0x00007ffe120f994c in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/libQtCore.so.4
#34 0x00007ffe120fa5ca in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib64/libQtCore.so.4
#35 0x00007ffe121230b3 in ?? () from /usr/lib64/libQtCore.so.4
#36 0x00007ffe0df720fb in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#37 0x00007ffe0df758cd in ?? () from /usr/lib64/libglib-2.0.so.0
#38 0x00007ffe0df75a8b in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#39 0x00007ffe12122d3f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#40 0x00007ffe0f52afaf in ?? () from /usr/lib64/libQtGui.so.4
#41 0x00007ffe120f81d2 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#42 0x00007ffe120f85a4 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#43 0x00007ffe120fa894 in QCoreApplication::exec() () from /usr/lib64/libQtCore.so.4
#44 0x00007ffe06f0ef83 in kdemain (argc=<value optimized out>, argv=<value optimized out>) at /usr/src/debug/kdebase-4.3.2/apps/konqueror/src/konqmain.cpp:257
#45 0x0000000000407495 in _start ()

Reported using DrKonqi
Comment 1 Dario Andres 2009-10-18 02:02:37 UTC
Please, also install the "kdelibs4-debuginfo" package and try to get another backtrace. Thanks
Comment 2 Roman Fietze 2009-10-18 11:53:11 UTC
Created attachment 37644 [details]
Backtrace konqueror with appropriate debuginfo packages installed

Packages:

kdelibs4-4.3.2-5.1
kdelibs4-core-4.3.2-5.1
kdelibs4-core-debuginfo-4.3.2-2.1
kdelibs4-debuginfo-4.3.2-5.1
konqueror-4.3.2-1.1
konqueror-debuginfo-4.3.2-1.1
konqueror-plugins-4.3.1-2.5
konqueror-plugins-debuginfo-4.3.1-2.5
Comment 3 Roman Fietze 2009-10-18 11:54:07 UTC
Added backtrace, see attachment..
Comment 4 Dario Andres 2009-10-31 22:00:31 UTC
Pasting backtrace inline:
---

Application: Konqueror (kdeinit4), signal: Segmentation fault
[KCrash Handler]
#5  0x00007f00b65b6813 in QMap<int, khtml::RenderTableCell*>::take (this=0x2943728, akey=@0x7fff43fee7cc) at /usr/include/QtCore/qmap.h:645
#6  0x00007f00b65b0af7 in khtml::RenderTableSection::addCell (this=0x2943698, cell=0x2947480, row=0x2947228) at /usr/src/debug/kdelibs-4.3.2/khtml/rendering/render_table.cpp:1229
#7  0x00007f00b65b129f in khtml::RenderTableRow::addChild (this=0x2947228, child=0x2947480, beforeChild=0x0) at /usr/src/debug/kdelibs-4.3.2/khtml/rendering/render_table.cpp:2279
#8  0x00007f00b64d0887 in DOM::NodeImpl::createRendererIfNeeded (this=0x29d34f0) at /usr/src/debug/kdelibs-4.3.2/khtml/xml/dom_nodeimpl.cpp:1084
#9  0x00007f00b64db839 in DOM::ElementImpl::attach (this=0x29d3740) at /usr/src/debug/kdelibs-4.3.2/khtml/xml/dom_elementimpl.cpp:863
#10 0x00007f00b650cb5e in khtml::KHTMLParser::insertNode (this=0x10c73f0, n=0x29d34f0, flat=false) at /usr/src/debug/kdelibs-4.3.2/khtml/html/htmlparser.cpp:429
#11 0x00007f00b650f1a7 in khtml::KHTMLParser::parseToken (this=0x10c73f0, t=0x10d9768) at /usr/src/debug/kdelibs-4.3.2/khtml/html/htmlparser.cpp:302
#12 0x00007f00b650fd54 in khtml::HTMLTokenizer::processToken (this=0x10d9740) at /usr/src/debug/kdelibs-4.3.2/khtml/html/htmltokenizer.cpp:2056
#13 0x00007f00b651689e in khtml::HTMLTokenizer::parseTag (this=0x10d9740, src=...) at /usr/src/debug/kdelibs-4.3.2/khtml/html/htmltokenizer.cpp:1529
#14 0x00007f00b6519062 in khtml::HTMLTokenizer::write (this=0x10d9740, str=..., appendData=true) at /usr/src/debug/kdelibs-4.3.2/khtml/html/htmltokenizer.cpp:1810
#15 0x00007f00b645e65d in KHTMLPart::write (this=0xd2b180, data=<value optimized out>, len=4096) at /usr/src/debug/kdelibs-4.3.2/khtml/khtml_part.cpp:2104
#16 0x00007f00b64602b7 in KHTMLPart::slotData (this=0xd2b180, kio_job=<value optimized out>, data=...) at /usr/src/debug/kdelibs-4.3.2/khtml/khtml_part.cpp:1786
#17 0x00007f00b6480bc8 in KHTMLPart::qt_metacall (this=0xd2b180, _c=InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff43fef440) at /usr/src/debug/kdelibs-4.3.2/build/khtml/khtml_part.moc:271
#18 0x00007f00c82e96e2 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib64/libQtCore.so.4
#19 0x00007f00c719a1f4 in KIO::TransferJob::data (this=0x29d3740, _t1=0x10d1100, _t2=<value optimized out>) at /usr/src/debug/kdelibs-4.3.2/build/kio/jobclasses.moc:364
#20 0x00007f00c719fb59 in KIO::TransferJob::qt_metacall (this=0x10d1100, _c=InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff43fef570)
    at /usr/src/debug/kdelibs-4.3.2/build/kio/jobclasses.moc:344
#21 0x00007f00c82e96e2 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib64/libQtCore.so.4
#22 0x00007f00c725ec62 in KIO::SlaveInterface::data (this=0x29d3740, _t1=<value optimized out>) at /usr/src/debug/kdelibs-4.3.2/build/kio/slaveinterface.moc:140
#23 0x00007f00c72624e8 in KIO::SlaveInterface::dispatch (this=0x106b2a0, _cmd=100, rawdata=<value optimized out>) at /usr/src/debug/kdelibs-4.3.2/kio/kio/slaveinterface.cpp:163
#24 0x00007f00c725ef12 in KIO::SlaveInterface::dispatch (this=0x106b2a0) at /usr/src/debug/kdelibs-4.3.2/kio/kio/slaveinterface.cpp:91
#25 0x00007f00c7251a73 in KIO::Slave::gotInput (this=0x106b2a0) at /usr/src/debug/kdelibs-4.3.2/kio/kio/slave.cpp:322
#26 0x00007f00c7253cd8 in KIO::Slave::qt_metacall (this=0x106b2a0, _c=InvokeMetaMethod, _id=0, _a=0x7fff43fef960) at /usr/src/debug/kdelibs-4.3.2/build/kio/slave.moc:76
#27 0x00007f00c82e96e2 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib64/libQtCore.so.4
#28 0x00007f00c716d441 in KIO::ConnectionPrivate::dequeue (this=0x106efb0) at /usr/src/debug/kdelibs-4.3.2/kio/kio/connection.cpp:82
#29 0x00007f00c716d89a in KIO::Connection::qt_metacall (this=0x106f480, _c=InvokeMetaMethod, _id=0, _a=0x121afa0) at /usr/src/debug/kdelibs-4.3.2/build/kio/connection.moc:73
#30 0x00007f00c82e48a8 in QObject::event(QEvent*) () from /usr/lib64/libQtCore.so.4
#31 0x00007f00c566eabd in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#32 0x00007f00c5676d4a in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#33 0x00007f00c6758d1b in KApplication::notify (this=0x7fff43ff0510, receiver=0x106f480, event=0x11e6df0) at /usr/src/debug/kdelibs-4.3.2/kdeui/kernel/kapplication.cpp:302
#34 0x00007f00c82d494c in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/libQtCore.so.4
#35 0x00007f00c82d55ca in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib64/libQtCore.so.4
#36 0x00007f00c82fe0b3 in ?? () from /usr/lib64/libQtCore.so.4
#37 0x00007f00c414d0fb in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#38 0x00007f00c41508cd in ?? () from /usr/lib64/libglib-2.0.so.0
#39 0x00007f00c4150a8b in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#40 0x00007f00c82fdd3f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#41 0x00007f00c5705faf in ?? () from /usr/lib64/libQtGui.so.4
#42 0x00007f00c82d31d2 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#43 0x00007f00c82d35a4 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#44 0x00007f00c82d5894 in QCoreApplication::exec() () from /usr/lib64/libQtCore.so.4
#45 0x00007f00bd0e9f83 in kdemain (argc=<value optimized out>, argv=<value optimized out>) at /usr/src/debug/kdebase-4.3.2/apps/konqueror/src/konqmain.cpp:257
#46 0x0000000000407495 in launch (argc=2, _name=0x64f748 "/usr/bin/konqueror", args=<value optimized out>, cwd=0x0, envc=0, envs=0x64f76c "", reset_env=false, tty=0x0, avoid_loops=false, 
    startup_id_str=0x64f774 "rfietze;1255859274;833483;31327_TIME1728824287") at /usr/src/debug/kdelibs-4.3.2/kinit/kinit.cpp:706
#47 0x0000000000407cb8 in handle_launcher_request (sock=7, who=<value optimized out>) at /usr/src/debug/kdelibs-4.3.2/kinit/kinit.cpp:1198
#48 0x0000000000408265 in handle_requests (waitForPid=0) at /usr/src/debug/kdelibs-4.3.2/kinit/kinit.cpp:1391
#49 0x0000000000408e16 in main (argc=4, argv=0x7fff43ff1d08, envp=0x7fff43ff1d30) at /usr/src/debug/kdelibs-4.3.2/kinit/kinit.cpp:1830
Comment 5 Dario Andres 2009-10-31 22:04:39 UTC
This could be related with bug 210817 (another freeze with similar backtrace)
Comment 6 Roman Fietze 2009-11-04 07:07:05 UTC
Still true for konqueror 4.3.3 from the openSUSE repos.
Comment 7 FiNeX 2009-11-29 22:28:03 UTC

*** This bug has been marked as a duplicate of bug 204297 ***
Comment 8 Roman Fietze 2009-12-06 11:22:56 UTC
I do not think this bug is related to bug 204297 or a duplicate of it.

I ran the test case attached to bug 204297, and it simply shows different results.

In my case konqueror freezes without crashing, and I have to force a core dump using kill to get a backtrace.

In the meantime I think I found a test case for you that's outside our company intranet:

  http://www.bike24.net
Comment 9 Roman Fietze 2010-01-15 11:07:59 UTC
Viewing those two pages, our dynamic PHP pages with images and bike24, using WebKit works, at least I could not get konqueror crash yet.
Comment 10 Roman Fietze 2010-05-03 15:39:50 UTC
The bug seems to be fixed. I can no longer reproduce it, neither with http://www.bike24.net nor our own pages.