Bug 233341 - infinite loop in KJS crashes Konqueror upon entering e.g. a bug search in https://bugs.kde.org/
Summary: infinite loop in KJS crashes Konqueror upon entering e.g. a bug search in htt...
Status: RESOLVED WORKSFORME
Alias: None
Product: konqueror
Classification: Applications
Component: kjs (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: Konqueror Developers
URL:
Keywords: triaged
Depends on:
Blocks:
 
Reported: 2010-04-05 13:29 UTC by Nix
Modified: 2018-10-27 03:44 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Nix 2010-04-05 13:29:25 UTC
Version:            (using Devel)
Compiler:          GCC 4.4.4 20100308 Pretty much the same as 4.4.3, compiled a couple of days after 4.4.3 release
OS:                Linux
Installed from:    Compiled sources

I've just tried to switch to KDE4 from 3.5.10, mainly to get a konqueror that can render recent webpages. Unfortunately the result of a fresh compilation from the 4.4 branch is a konqueror which always enters infinite loops within a couple of minutes of starting. Backtraces show massive KJS garbage collection, but the backtrace following (obtained immediately after searching for 'KJS::ArrayInstance::mark' in https://bugs.kde.org/) shows that it's doing computation as well. We have an infinite loop.

Nobody else is seeing this (indeed this bug report is entered in a non-crashing Konqueror 4.4.1 under a Fedora VM), or the noise would be tremendous, even if it was a GCC 4.4 bug that only affected Konqueror: major distros are compiling Konqueror with this compiler now. Is there some patch that absolutely everyone else is applying but nobody is talking about, or is this a very recent bug, or some sort of obscure error with the way I'm building KDE? (the latter is quite unlikely; I just ran cmake and make/make install on everything. It was much simpler than building 3.3.x ever was, thanks to cmake).

Backtraces (more than one, all from the same looping instance, in the hope that this might help people figure out where the loop is happening):

878	        node = reinterpret_cast<Node **>(&d->buckets[h % d->numBuckets]);
(gdb) bt
#0  0x00007fe371a58e06 in QHash<KJS::Interpreter*, KJSDebugger::InterpreterContext*>::findNode (this=0x2b8a0e0, akey=<value optimized out>, ahp=0x7fff2e3e476c) at /usr/include/qt/QtCore/qhash.h:878
#1  0x00007fe371a56c33 in QHash<KJS::Interpreter*, KJSDebugger::InterpreterContext*>::operator[] (this=0x2b89fc0, exec=0x7fff2e3e5030, sourceId=594, firstLine=6, lastLine=49656144)
    at /usr/include/qt/QtCore/qhash.h:736
#2  KJSDebugger::DebugWindow::checkSourceLocation (this=0x2b89fc0, exec=0x7fff2e3e5030, sourceId=594, firstLine=6, lastLine=49656144) at /usr/src/kde/x86_64-mutilate/khtml/ecma/debugger/debugwindow.cpp:695
#3  0x00007fe371a570ab in KJSDebugger::DebugWindow::atStatement (this=0x2b89fc0, exec=0x7fff2e3e5030, sourceId=<value optimized out>, firstLine=6, lastLine=6)
    at /usr/src/kde/x86_64-mutilate/khtml/ecma/debugger/debugwindow.cpp:690
#4  0x00007fe371151af6 in KJS::Machine::runBlock (exec=0x7fff2e3e5030, codeBlock=<value optimized out>, parentExec=<value optimized out>) at codes.def:230
#5  0x00007fe371137557 in KJS::FunctionImp::callAsFunction (this=0x7fe364c40440, exec=0x7fff2e3e5a10, thisObj=<value optimized out>, args=<value optimized out>)
    at /usr/src/kde/x86_64-mutilate/kjs/function.cpp:144
#6  0x00007fe37113ad49 in KJS::JSObject::call (this=0x2b8a0e0, exec=0x2f5b150, thisObj=0xb, args=...) at /usr/src/kde/x86_64-mutilate/kjs/object.cpp:70
#7  0x00007fe371156f8b in KJS::Machine::runBlock (exec=0x7fff2e3e5a10, codeBlock=<value optimized out>, parentExec=<value optimized out>) at codes.def:1192
#8  0x00007fe371137557 in KJS::FunctionImp::callAsFunction (this=0x7fe36484c440, exec=0x7fff2e3e6490, thisObj=<value optimized out>, args=<value optimized out>)
    at /usr/src/kde/x86_64-mutilate/kjs/function.cpp:144
#9  0x00007fe37113ad49 in KJS::JSObject::call (this=0x2b8a0e0, exec=0x2f5b150, thisObj=0xb, args=...) at /usr/src/kde/x86_64-mutilate/kjs/object.cpp:70
#10 0x00007fe371156f8b in KJS::Machine::runBlock (exec=0x7fff2e3e6490, codeBlock=<value optimized out>, parentExec=<value optimized out>) at codes.def:1192
#11 0x00007fe37110d343 in KJS::FunctionBodyNode::execute (this=0x63ad1a0, exec=0x7fff2e3e6490) at /usr/src/kde/x86_64-mutilate/kjs/nodes.cpp:927
#12 0x00007fe37113dbea in KJS::Interpreter::evaluate (this=0x2f5b150, sourceURL=..., startingLineNumber=0, code=<value optimized out>, codeLength=<value optimized out>, thisV=0x7fe377040180)
    at /usr/src/kde/x86_64-mutilate/kjs/interpreter.cpp:556
#13 0x00007fe37113dd53 in KJS::Interpreter::evaluate (this=0x1f21ae0, sourceURL=..., startingLineNumber=49656144, code=<value optimized out>, thisV=<value optimized out>)
    at /usr/src/kde/x86_64-mutilate/kjs/interpreter.cpp:496
#14 0x00007fe371a1e7c0 in KJS::KJSProxyImpl::evaluate (this=0x2bd4870, filename=DWARF-2 expression error: DW_OP_reg operations must be used either alone or in conjuction with DW_OP_piece.
) at /usr/src/kde/x86_64-mutilate/khtml/ecma/kjs_proxy.cpp:158
#15 0x00007fe3717c8340 in KHTMLPart::executeScript (this=0x17f3980, filename=..., baseLine=0, n=<value optimized out>, script=<value optimized out>)
    at /usr/src/kde/x86_64-mutilate/khtml/khtml_part.cpp:1323
#16 0x00007fe3718789c2 in khtml::HTMLTokenizer::scriptExecution (this=0x3189ce0, str=..., scriptURL=<value optimized out>, baseLine=0) at /usr/src/kde/x86_64-mutilate/khtml/html/htmltokenizer.cpp:501
#17 0x00007fe37187d1d9 in khtml::HTMLTokenizer::notifyFinished (this=0x3189ce0) at /usr/src/kde/x86_64-mutilate/khtml/html/htmltokenizer.cpp:2122
#18 0x00007fe37199938f in khtml::CachedScript::checkNotify (this=0x6234650) at /usr/src/kde/x86_64-mutilate/khtml/misc/loader.cpp:390
#19 0x00007fe37199d26c in khtml::CachedScript::data (this=0x6234650, buffer=<value optimized out>, eof=<value optimized out>) at /usr/src/kde/x86_64-mutilate/khtml/misc/loader.cpp:382
#20 0x00007fe37199cd6f in khtml::Loader::slotFinished (this=0x1675da0, job=0x34b7700) at /usr/src/kde/x86_64-mutilate/khtml/misc/loader.cpp:1461
#21 0x00007fe37199d0b3 in khtml::Loader::qt_metacall (this=0x1675da0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff2e3e6ef0)
    at /usr/src/kde/x86_64-mutilate/build/khtml/loader.moc:143
#22 0x00007fe37e955edf in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#23 0x00007fe37ed54882 in KJob::result (this=0x2b8a0e0, _t1=0x34b7700) at /usr/src/kde/x86_64-mutilate/build/kdecore/kjob.moc:194
#24 0x00007fe37ed54b20 in KJob::emitResult (this=0x34b7700) at /usr/src/kde/x86_64-mutilate/kdecore/jobs/kjob.cpp:312
#25 0x00007fe37fa637f3 in KIO::SimpleJob::slotFinished (this=0x34b7700) at /usr/src/kde/x86_64-mutilate/kio/kio/job.cpp:517
#26 0x00007fe37fa641b7 in KIO::TransferJob::slotFinished (this=0x34b7700) at /usr/src/kde/x86_64-mutilate/kio/kio/job.cpp:1097
#27 0x00007fe37fa61851 in KIO::TransferJob::qt_metacall (this=0x34b7700, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff2e3e7300)
    at /usr/src/kde/x86_64-mutilate/build/kio/jobclasses.moc:367
#28 0x00007fe37e955edf in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#29 0x00007fe37fb24af1 in KIO::SlaveInterface::dispatch (this=0x45b7740, _cmd=104, rawdata=...) at /usr/src/kde/x86_64-mutilate/kio/kio/slaveinterface.cpp:175
#30 0x00007fe37fb21e7d in KIO::SlaveInterface::dispatch (this=0x45b7740) at /usr/src/kde/x86_64-mutilate/kio/kio/slaveinterface.cpp:91
#31 0x00007fe37fb16316 in KIO::Slave::gotInput (this=0x45b7740) at /usr/src/kde/x86_64-mutilate/kio/kio/slave.cpp:324
#32 0x00007fe37fb164fc in KIO::Slave::qt_metacall (this=0x45b7740, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff2e3e7730) at /usr/src/kde/x86_64-mutilate/build/kio/slave.moc:82
#33 0x00007fe37e955edf in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#34 0x00007fe37fa322c7 in KIO::ConnectionPrivate::dequeue (this=0x3c99710) at /usr/src/kde/x86_64-mutilate/kio/kio/connection.cpp:82
#35 0x00007fe37fa323ed in KIO::Connection::qt_metacall (this=0x468b5e0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x349ee30)
    at /usr/src/kde/x86_64-mutilate/build/kio/connection.moc:79
#36 0x00007fe37e952de9 in QObject::event(QEvent*) () from /usr/lib/libQtCore.so.4
#37 0x00007fe37da8052c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#38 0x00007fe37da86a3b in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#39 0x00007fe37f3165e6 in KApplication::notify (this=0x7fff2e3e8390, receiver=0x468b5e0, event=0x34bc2c0) at /usr/src/kde/x86_64-mutilate/kdeui/kernel/kapplication.cpp:302
#40 0x00007fe37e94320b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
#41 0x00007fe37e945956 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/libQtCore.so.4
#42 0x00007fe37e96caa3 in ?? () from /usr/lib/libQtCore.so.4
#43 0x00007fe379f02a07 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#44 0x00007fe379f05b68 in g_main_context_iterate () from /usr/lib/libglib-2.0.so.0
#45 0x00007fe379f05c90 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#46 0x00007fe37e96c5e3 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#47 0x00007fe37db2f09e in ?? () from /usr/lib/libQtGui.so.4
#48 0x00007fe37e941b62 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#49 0x00007fe37e941f34 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#50 0x00007fe37e945c1b in QCoreApplication::exec() () from /usr/lib/libQtCore.so.4
#51 0x00007fe380e86451 in kdemain (argc=<value optimized out>, argv=<value optimized out>) at /usr/src/kde/x86_64-mutilate/apps/konqueror/src/konqmain.cpp:257
#52 0x00007fe380a8cc0d in __libc_start_main () from /lib/libc.so.6
#53 0x0000000000400629 in _start ()
(gdb) continue
Continuing.
^C



Program received signal SIGINT, Interrupt.
0x00007fe37113b5f5 in KJS::JSObject::getDirectLocation (this=0x7fe36484c180, exec=0x7fff2e3e5030, propertyName=..., slot=...) at /usr/src/kde/x86_64-mutilate/kjs/object.h:441
441	/usr/src/kde/x86_64-mutilate/kjs/object.h: No such file or directory.
	in /usr/src/kde/x86_64-mutilate/kjs/object.h
(gdb) bt
#0  0x00007fe37113b5f5 in KJS::JSObject::getDirectLocation (this=0x7fe36484c180, exec=0x7fff2e3e5030, propertyName=..., slot=...) at /usr/src/kde/x86_64-mutilate/kjs/object.h:441
#1  KJS::JSObject::getOwnPropertySlot (this=0x7fe36484c180, exec=0x7fff2e3e5030, propertyName=..., slot=...) at /usr/src/kde/x86_64-mutilate/kjs/object.cpp:175
#2  0x00007fe37113a62d in KJS::JSObject::getPropertySlot (this=0x7fe36484c180, exec=0x7fff2e3e5030, propertyName=...) at /usr/src/kde/x86_64-mutilate/kjs/object.h:592
#3  KJS::JSObject::get (this=0x7fe36484c180, exec=0x7fff2e3e5030, propertyName=...) at /usr/src/kde/x86_64-mutilate/kjs/object.cpp:132
#4  0x00007fe37113b0db in tryGetAndCallProperty (this=0x7fe36484c180, exec=0x7fff2e3e5030, hint=<value optimized out>) at /usr/src/kde/x86_64-mutilate/kjs/object.cpp:345
#5  KJS::JSObject::defaultValue (this=0x7fe36484c180, exec=0x7fff2e3e5030, hint=<value optimized out>) at /usr/src/kde/x86_64-mutilate/kjs/object.cpp:384
#6  0x00007fe371139faa in KJS::JSObject::getPrimitiveNumber (this=0x8f46b1c, exec=0xf, number=@0x7fff2e3e47f0, result=@0xc) at /usr/src/kde/x86_64-mutilate/kjs/object.cpp:362
#7  0x00007fe37111b3dc in KJS::JSValue::getPrimitiveNumber (exec=0x7fff2e3e5030, v1=<value optimized out>, v2=0x7fe36484c180) at /usr/src/kde/x86_64-mutilate/kjs/value.h:470
#8  KJS::relation (exec=0x7fff2e3e5030, v1=<value optimized out>, v2=0x7fe36484c180) at /usr/src/kde/x86_64-mutilate/kjs/operations.cpp:205
#9  0x00007fe3711524cd in KJS::Machine::runBlock (exec=0x7fff2e3e5030, codeBlock=<value optimized out>, parentExec=<value optimized out>) at codes.def:978
#10 0x00007fe371137557 in KJS::FunctionImp::callAsFunction (this=0x7fe364c40440, exec=0x7fff2e3e5a10, thisObj=<value optimized out>, args=<value optimized out>)
    at /usr/src/kde/x86_64-mutilate/kjs/function.cpp:144
#11 0x00007fe37113ad49 in KJS::JSObject::call (this=0x8f46b1c, exec=0x0, thisObj=0x24, args=...) at /usr/src/kde/x86_64-mutilate/kjs/object.cpp:70
#12 0x00007fe371156f8b in KJS::Machine::runBlock (exec=0x7fff2e3e5a10, codeBlock=<value optimized out>, parentExec=<value optimized out>) at codes.def:1192
#13 0x00007fe371137557 in KJS::FunctionImp::callAsFunction (this=0x7fe36484c440, exec=0x7fff2e3e6490, thisObj=<value optimized out>, args=<value optimized out>)
    at /usr/src/kde/x86_64-mutilate/kjs/function.cpp:144
#14 0x00007fe37113ad49 in KJS::JSObject::call (this=0x8f46b1c, exec=0x0, thisObj=0x24, args=...) at /usr/src/kde/x86_64-mutilate/kjs/object.cpp:70
#15 0x00007fe371156f8b in KJS::Machine::runBlock (exec=0x7fff2e3e6490, codeBlock=<value optimized out>, parentExec=<value optimized out>) at codes.def:1192
#16 0x00007fe37110d343 in KJS::FunctionBodyNode::execute (this=0x63ad1a0, exec=0x7fff2e3e6490) at /usr/src/kde/x86_64-mutilate/kjs/nodes.cpp:927
#17 0x00007fe37113dbea in KJS::Interpreter::evaluate (this=0x2f5b150, sourceURL=..., startingLineNumber=0, code=<value optimized out>, codeLength=<value optimized out>, thisV=0x7fe377040180)
    at /usr/src/kde/x86_64-mutilate/kjs/interpreter.cpp:556
#18 0x00007fe37113dd53 in KJS::Interpreter::evaluate (this=0xf, sourceURL=..., startingLineNumber=12, code=<value optimized out>, thisV=<value optimized out>)
    at /usr/src/kde/x86_64-mutilate/kjs/interpreter.cpp:496
#19 0x00007fe371a1e7c0 in KJS::KJSProxyImpl::evaluate (this=0x2bd4870, filename=DWARF-2 expression error: DW_OP_reg operations must be used either alone or in conjuction with DW_OP_piece.
) at /usr/src/kde/x86_64-mutilate/khtml/ecma/kjs_proxy.cpp:158
#20 0x00007fe3717c8340 in KHTMLPart::executeScript (this=0x17f3980, filename=..., baseLine=0, n=<value optimized out>, script=<value optimized out>)
    at /usr/src/kde/x86_64-mutilate/khtml/khtml_part.cpp:1323
#21 0x00007fe3718789c2 in khtml::HTMLTokenizer::scriptExecution (this=0x3189ce0, str=..., scriptURL=<value optimized out>, baseLine=0) at /usr/src/kde/x86_64-mutilate/khtml/html/htmltokenizer.cpp:501
#22 0x00007fe37187d1d9 in khtml::HTMLTokenizer::notifyFinished (this=0x3189ce0) at /usr/src/kde/x86_64-mutilate/khtml/html/htmltokenizer.cpp:2122
#23 0x00007fe37199938f in khtml::CachedScript::checkNotify (this=0x6234650) at /usr/src/kde/x86_64-mutilate/khtml/misc/loader.cpp:390
#24 0x00007fe37199d26c in khtml::CachedScript::data (this=0x6234650, buffer=<value optimized out>, eof=<value optimized out>) at /usr/src/kde/x86_64-mutilate/khtml/misc/loader.cpp:382
#25 0x00007fe37199cd6f in khtml::Loader::slotFinished (this=0x1675da0, job=0x34b7700) at /usr/src/kde/x86_64-mutilate/khtml/misc/loader.cpp:1461
#26 0x00007fe37199d0b3 in khtml::Loader::qt_metacall (this=0x1675da0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff2e3e6ef0)
    at /usr/src/kde/x86_64-mutilate/build/khtml/loader.moc:143
#27 0x00007fe37e955edf in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#28 0x00007fe37ed54882 in KJob::result (this=0x8f46b1c, _t1=0x34b7700) at /usr/src/kde/x86_64-mutilate/build/kdecore/kjob.moc:194
#29 0x00007fe37ed54b20 in KJob::emitResult (this=0x34b7700) at /usr/src/kde/x86_64-mutilate/kdecore/jobs/kjob.cpp:312
#30 0x00007fe37fa637f3 in KIO::SimpleJob::slotFinished (this=0x34b7700) at /usr/src/kde/x86_64-mutilate/kio/kio/job.cpp:517
#31 0x00007fe37fa641b7 in KIO::TransferJob::slotFinished (this=0x34b7700) at /usr/src/kde/x86_64-mutilate/kio/kio/job.cpp:1097
#32 0x00007fe37fa61851 in KIO::TransferJob::qt_metacall (this=0x34b7700, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff2e3e7300)
    at /usr/src/kde/x86_64-mutilate/build/kio/jobclasses.moc:367
#33 0x00007fe37e955edf in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#34 0x00007fe37fb24af1 in KIO::SlaveInterface::dispatch (this=0x45b7740, _cmd=104, rawdata=...) at /usr/src/kde/x86_64-mutilate/kio/kio/slaveinterface.cpp:175
#35 0x00007fe37fb21e7d in KIO::SlaveInterface::dispatch (this=0x45b7740) at /usr/src/kde/x86_64-mutilate/kio/kio/slaveinterface.cpp:91
#36 0x00007fe37fb16316 in KIO::Slave::gotInput (this=0x45b7740) at /usr/src/kde/x86_64-mutilate/kio/kio/slave.cpp:324
#37 0x00007fe37fb164fc in KIO::Slave::qt_metacall (this=0x45b7740, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff2e3e7730) at /usr/src/kde/x86_64-mutilate/build/kio/slave.moc:82
#38 0x00007fe37e955edf in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#39 0x00007fe37fa322c7 in KIO::ConnectionPrivate::dequeue (this=0x3c99710) at /usr/src/kde/x86_64-mutilate/kio/kio/connection.cpp:82
#40 0x00007fe37fa323ed in KIO::Connection::qt_metacall (this=0x468b5e0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x349ee30)
    at /usr/src/kde/x86_64-mutilate/build/kio/connection.moc:79
#41 0x00007fe37e952de9 in QObject::event(QEvent*) () from /usr/lib/libQtCore.so.4
#42 0x00007fe37da8052c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#43 0x00007fe37da86a3b in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#44 0x00007fe37f3165e6 in KApplication::notify (this=0x7fff2e3e8390, receiver=0x468b5e0, event=0x34bc2c0) at /usr/src/kde/x86_64-mutilate/kdeui/kernel/kapplication.cpp:302
#45 0x00007fe37e94320b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
#46 0x00007fe37e945956 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/libQtCore.so.4
#47 0x00007fe37e96caa3 in ?? () from /usr/lib/libQtCore.so.4
#48 0x00007fe379f02a07 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#49 0x00007fe379f05b68 in g_main_context_iterate () from /usr/lib/libglib-2.0.so.0
#50 0x00007fe379f05c90 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#51 0x00007fe37e96c5e3 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#52 0x00007fe37db2f09e in ?? () from /usr/lib/libQtGui.so.4
#53 0x00007fe37e941b62 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#54 0x00007fe37e941f34 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#55 0x00007fe37e945c1b in QCoreApplication::exec() () from /usr/lib/libQtCore.so.4
#56 0x00007fe380e86451 in kdemain (argc=<value optimized out>, argv=<value optimized out>) at /usr/src/kde/x86_64-mutilate/apps/konqueror/src/konqmain.cpp:257
#57 0x00007fe380a8cc0d in __libc_start_main () from /lib/libc.so.6
#58 0x0000000000400629 in _start ()
(gdb) 
(gdb) continue
Continuing.
^C
Program received signal SIGINT, Interrupt.
KJS::ArrayInstance::mark (this=<value optimized out>) at /usr/src/kde/x86_64-mutilate/kjs/array_instance.cpp:448
448	/usr/src/kde/x86_64-mutilate/kjs/array_instance.cpp: No such file or directory.
	in /usr/src/kde/x86_64-mutilate/kjs/array_instance.cpp
(gdb) continue



(gdb) bt
#0  KJS::ArrayInstance::mark (this=<value optimized out>) at /usr/src/kde/x86_64-mutilate/kjs/array_instance.cpp:448
#1  0x00007fe37114adad in KJS::JSValue::mark (this=<value optimized out>) at /usr/src/kde/x86_64-mutilate/kjs/value.h:445
#2  KJS::JSVariableObject::mark (this=<value optimized out>) at /usr/src/kde/x86_64-mutilate/kjs/JSVariableObject.cpp:85
#3  0x00007fe3711273a6 in KJS::ScopeChain::mark (this=0x7fff2e3e5030) at /usr/src/kde/x86_64-mutilate/kjs/JSVariableObject.h:146
#4  KJS::ExecState::markSelf (this=0x7fff2e3e5030) at /usr/src/kde/x86_64-mutilate/kjs/ExecState.cpp:77
#5  0x00007fe3711273d8 in KJS::ExecState::mark (this=<value optimized out>) at /usr/src/kde/x86_64-mutilate/kjs/ExecState.cpp:89
#6  0x00007fe37113c625 in KJS::Interpreter::mark (this=0x2f5b150) at /usr/src/kde/x86_64-mutilate/kjs/interpreter.cpp:749
#7  0x00007fe3719cbb16 in KJS::ScriptInterpreter::mark (this=0x7, isMain=false) at /usr/src/kde/x86_64-mutilate/khtml/ecma/kjs_binding.cpp:104
#8  0x00007fe37110b931 in KJS::Collector::collect () at /usr/src/kde/x86_64-mutilate/kjs/collector.cpp:680
#9  0x00007fe37110c07f in KJS::Collector::allocate (s=16) at /usr/src/kde/x86_64-mutilate/kjs/collector.cpp:330
#10 0x00007fe3711391ae in KJS::jsString (s=...) at /usr/src/kde/x86_64-mutilate/kjs/value.cpp:197
#11 0x00007fe37111dee6 in KJS::FunctionProtoFunc::callAsFunction (this=<value optimized out>, exec=<value optimized out>, thisObj=0x7fe36484c180, args=...)
    at /usr/src/kde/x86_64-mutilate/kjs/function_object.cpp:86
#12 0x00007fe37113ad49 in KJS::JSObject::call (this=0x7, exec=0x7fe3583266a0, thisObj=0x7fe364c20000, args=...) at /usr/src/kde/x86_64-mutilate/kjs/object.cpp:70
#13 0x00007fe37113b1bc in tryGetAndCallProperty (this=0x7fe36484c180, exec=0x7fff2e3e5030, hint=<value optimized out>) at /usr/src/kde/x86_64-mutilate/kjs/object.cpp:350
#14 KJS::JSObject::defaultValue (this=0x7fe36484c180, exec=0x7fff2e3e5030, hint=<value optimized out>) at /usr/src/kde/x86_64-mutilate/kjs/object.cpp:384
#15 0x00007fe371139faa in KJS::JSObject::getPrimitiveNumber (this=0x7, exec=0x80000, number=@0x7fff2e3e47f0, result=@0x800000) at /usr/src/kde/x86_64-mutilate/kjs/object.cpp:362
#16 0x00007fe37111b3dc in KJS::JSValue::getPrimitiveNumber (exec=0x7fff2e3e5030, v1=<value optimized out>, v2=0x7fe36484c180) at /usr/src/kde/x86_64-mutilate/kjs/value.h:470
#17 KJS::relation (exec=0x7fff2e3e5030, v1=<value optimized out>, v2=0x7fe36484c180) at /usr/src/kde/x86_64-mutilate/kjs/operations.cpp:205
#18 0x00007fe3711524cd in KJS::Machine::runBlock (exec=0x7fff2e3e5030, codeBlock=<value optimized out>, parentExec=<value optimized out>) at codes.def:978
#19 0x00007fe371137557 in KJS::FunctionImp::callAsFunction (this=0x7fe364c40440, exec=0x7fff2e3e5a10, thisObj=<value optimized out>, args=<value optimized out>)
    at /usr/src/kde/x86_64-mutilate/kjs/function.cpp:144
#20 0x00007fe37113ad49 in KJS::JSObject::call (this=0x7, exec=0x7fe3583266a0, thisObj=0x7fe364c20000, args=...) at /usr/src/kde/x86_64-mutilate/kjs/object.cpp:70
#21 0x00007fe371156f8b in KJS::Machine::runBlock (exec=0x7fff2e3e5a10, codeBlock=<value optimized out>, parentExec=<value optimized out>) at codes.def:1192
#22 0x00007fe371137557 in KJS::FunctionImp::callAsFunction (this=0x7fe36484c440, exec=0x7fff2e3e6490, thisObj=<value optimized out>, args=<value optimized out>)
    at /usr/src/kde/x86_64-mutilate/kjs/function.cpp:144
#23 0x00007fe37113ad49 in KJS::JSObject::call (this=0x7, exec=0x7fe3583266a0, thisObj=0x7fe364c20000, args=...) at /usr/src/kde/x86_64-mutilate/kjs/object.cpp:70
#24 0x00007fe371156f8b in KJS::Machine::runBlock (exec=0x7fff2e3e6490, codeBlock=<value optimized out>, parentExec=<value optimized out>) at codes.def:1192
#25 0x00007fe37110d343 in KJS::FunctionBodyNode::execute (this=0x63ad1a0, exec=0x7fff2e3e6490) at /usr/src/kde/x86_64-mutilate/kjs/nodes.cpp:927
#26 0x00007fe37113dbea in KJS::Interpreter::evaluate (this=0x2f5b150, sourceURL=..., startingLineNumber=0, code=<value optimized out>, codeLength=<value optimized out>, thisV=0x7fe377040180)
    at /usr/src/kde/x86_64-mutilate/kjs/interpreter.cpp:556
#27 0x00007fe37113dd53 in KJS::Interpreter::evaluate (this=0x80000, sourceURL=..., startingLineNumber=8388608, code=<value optimized out>, thisV=<value optimized out>)
    at /usr/src/kde/x86_64-mutilate/kjs/interpreter.cpp:496
#28 0x00007fe371a1e7c0 in KJS::KJSProxyImpl::evaluate (this=0x2bd4870, filename=DWARF-2 expression error: DW_OP_reg operations must be used either alone or in conjuction with DW_OP_piece.
) at /usr/src/kde/x86_64-mutilate/khtml/ecma/kjs_proxy.cpp:158
#29 0x00007fe3717c8340 in KHTMLPart::executeScript (this=0x17f3980, filename=..., baseLine=0, n=<value optimized out>, script=<value optimized out>)
    at /usr/src/kde/x86_64-mutilate/khtml/khtml_part.cpp:1323
#30 0x00007fe3718789c2 in khtml::HTMLTokenizer::scriptExecution (this=0x3189ce0, str=..., scriptURL=<value optimized out>, baseLine=0) at /usr/src/kde/x86_64-mutilate/khtml/html/htmltokenizer.cpp:501
#31 0x00007fe37187d1d9 in khtml::HTMLTokenizer::notifyFinished (this=0x3189ce0) at /usr/src/kde/x86_64-mutilate/khtml/html/htmltokenizer.cpp:2122
#32 0x00007fe37199938f in khtml::CachedScript::checkNotify (this=0x6234650) at /usr/src/kde/x86_64-mutilate/khtml/misc/loader.cpp:390
#33 0x00007fe37199d26c in khtml::CachedScript::data (this=0x6234650, buffer=<value optimized out>, eof=<value optimized out>) at /usr/src/kde/x86_64-mutilate/khtml/misc/loader.cpp:382
#34 0x00007fe37199cd6f in khtml::Loader::slotFinished (this=0x1675da0, job=0x34b7700) at /usr/src/kde/x86_64-mutilate/khtml/misc/loader.cpp:1461
#35 0x00007fe37199d0b3 in khtml::Loader::qt_metacall (this=0x1675da0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff2e3e6ef0)
    at /usr/src/kde/x86_64-mutilate/build/khtml/loader.moc:143
#36 0x00007fe37e955edf in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#37 0x00007fe37ed54882 in KJob::result (this=0x7, _t1=0x34b7700) at /usr/src/kde/x86_64-mutilate/build/kdecore/kjob.moc:194
#38 0x00007fe37ed54b20 in KJob::emitResult (this=0x34b7700) at /usr/src/kde/x86_64-mutilate/kdecore/jobs/kjob.cpp:312
#39 0x00007fe37fa637f3 in KIO::SimpleJob::slotFinished (this=0x34b7700) at /usr/src/kde/x86_64-mutilate/kio/kio/job.cpp:517
#40 0x00007fe37fa641b7 in KIO::TransferJob::slotFinished (this=0x34b7700) at /usr/src/kde/x86_64-mutilate/kio/kio/job.cpp:1097
#41 0x00007fe37fa61851 in KIO::TransferJob::qt_metacall (this=0x34b7700, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff2e3e7300)
    at /usr/src/kde/x86_64-mutilate/build/kio/jobclasses.moc:367
#42 0x00007fe37e955edf in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#43 0x00007fe37fb24af1 in KIO::SlaveInterface::dispatch (this=0x45b7740, _cmd=104, rawdata=...) at /usr/src/kde/x86_64-mutilate/kio/kio/slaveinterface.cpp:175
#44 0x00007fe37fb21e7d in KIO::SlaveInterface::dispatch (this=0x45b7740) at /usr/src/kde/x86_64-mutilate/kio/kio/slaveinterface.cpp:91
#45 0x00007fe37fb16316 in KIO::Slave::gotInput (this=0x45b7740) at /usr/src/kde/x86_64-mutilate/kio/kio/slave.cpp:324
#46 0x00007fe37fb164fc in KIO::Slave::qt_metacall (this=0x45b7740, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff2e3e7730) at /usr/src/kde/x86_64-mutilate/build/kio/slave.moc:82
#47 0x00007fe37e955edf in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#48 0x00007fe37fa322c7 in KIO::ConnectionPrivate::dequeue (this=0x3c99710) at /usr/src/kde/x86_64-mutilate/kio/kio/connection.cpp:82
#49 0x00007fe37fa323ed in KIO::Connection::qt_metacall (this=0x468b5e0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x349ee30)
    at /usr/src/kde/x86_64-mutilate/build/kio/connection.moc:79
#50 0x00007fe37e952de9 in QObject::event(QEvent*) () from /usr/lib/libQtCore.so.4
#51 0x00007fe37da8052c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#52 0x00007fe37da86a3b in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#53 0x00007fe37f3165e6 in KApplication::notify (this=0x7fff2e3e8390, receiver=0x468b5e0, event=0x34bc2c0) at /usr/src/kde/x86_64-mutilate/kdeui/kernel/kapplication.cpp:302
#54 0x00007fe37e94320b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
#55 0x00007fe37e945956 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/libQtCore.so.4
#56 0x00007fe37e96caa3 in ?? () from /usr/lib/libQtCore.so.4
#57 0x00007fe379f02a07 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#58 0x00007fe379f05b68 in g_main_context_iterate () from /usr/lib/libglib-2.0.so.0
#59 0x00007fe379f05c90 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#60 0x00007fe37e96c5e3 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#61 0x00007fe37db2f09e in ?? () from /usr/lib/libQtGui.so.4
#62 0x00007fe37e941b62 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#63 0x00007fe37e941f34 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#64 0x00007fe37e945c1b in QCoreApplication::exec() () from /usr/lib/libQtCore.so.4
#65 0x00007fe380e86451 in kdemain (argc=<value optimized out>, argv=<value optimized out>) at /usr/src/kde/x86_64-mutilate/apps/konqueror/src/konqmain.cpp:257
#66 0x00007fe380a8cc0d in __libc_start_main () from /lib/libc.so.6
#67 0x0000000000400629 in _start ()
Comment 1 Maksim Orlovich 2010-04-05 15:39:22 UTC
Very weird --- and I am using gcc-4.4.3 myself. The only thing that stands out as "wrong" in the backtraces is that you have the JS debugger enabled --- that's normally a bad thing (it's slow, and due to how nested event loops work, can lead to crashes) --- did you enable it explicitly? At any rate, the only thing I can think of that may help is to do:

call _ZN11KJSDebugger11DebugWindow15forceStopAtNextEv()

at the gdb prompt, which would pull up the JS debugger, and maybe show what piece of code is malfunctionning.
Comment 2 Nix 2010-04-05 17:17:40 UTC
Ooh, I never noticed that. This setting was inherited from my KDE3 configuration, where it was left on after a spasm of JS debugging three years ago. (I guess the JS debugger works quite well in KDE3, if you do nothing at all with it!)

I've reverted to KDE3 to get some work done: when I restart X next, I'll try this.
Comment 3 Nix 2010-04-08 00:15:05 UTC
Tried it. Instant return: nothing displayed :(

Turning off the JS debugger, unfortunately, does not stop the loop. Backtrace:

0x00007f0d352b3450 in WTF::fastMalloc (d=<value optimized out>, length=80) at /usr/src/kde/x86_64-mutilate/kjs/wtf/FastMalloc.h:37
37	/usr/src/kde/x86_64-mutilate/kjs/wtf/FastMalloc.h: No such file or directory.
	in /usr/src/kde/x86_64-mutilate/kjs/wtf/FastMalloc.h
(gdb) bt
#0  0x00007f0d352b3450 in WTF::fastMalloc (d=<value optimized out>, length=80) at /usr/src/kde/x86_64-mutilate/kjs/wtf/FastMalloc.h:37
#1  allocChars (d=<value optimized out>, length=80) at /usr/src/kde/x86_64-mutilate/kjs/ustring.cpp:74
#2  KJS::UString::Rep::createCopying (d=<value optimized out>, length=80) at /usr/src/kde/x86_64-mutilate/kjs/ustring.cpp:161
#3  0x00007f0d352b404b in UString (this=0x7fffe08ce310, c=0xa0, length=1157340736) at /usr/src/kde/x86_64-mutilate/kjs/ustring.cpp:459
#4  0x00007f0d352f184c in KJS::SourceStream::flush (this=0x7fffe08ce340) at /usr/src/kde/x86_64-mutilate/kjs/nodes2string.cpp:111
#5  0x00007f0d352f3333 in KJS::SourceStream::toString (this=<value optimized out>) at /usr/src/kde/x86_64-mutilate/kjs/nodes2string.cpp:66
#6  KJS::FunctionImp::toSource (this=<value optimized out>) at /usr/src/kde/x86_64-mutilate/kjs/nodes2string.cpp:273
#7  0x00007f0d352ccede in KJS::FunctionProtoFunc::callAsFunction (this=<value optimized out>, exec=<value optimized out>, thisObj=0x7f0d4530b900, args=...)
    at /usr/src/kde/x86_64-mutilate/kjs/function_object.cpp:86
#8  0x00007f0d352e9d49 in KJS::JSObject::call (this=0x7f0d44fb9e40, exec=0xb0, thisObj=0x7f0d44fb9e40, args=...) at /usr/src/kde/x86_64-mutilate/kjs/object.cpp:70
#9  0x00007f0d352ea1bc in tryGetAndCallProperty (this=0x7f0d4530b900, exec=0x7fffe08cfd10, hint=<value optimized out>) at /usr/src/kde/x86_64-mutilate/kjs/object.cpp:350
#10 KJS::JSObject::defaultValue (this=0x7f0d4530b900, exec=0x7fffe08cfd10, hint=<value optimized out>) at /usr/src/kde/x86_64-mutilate/kjs/object.cpp:384
#11 0x00007f0d352e8faa in KJS::JSObject::getPrimitiveNumber (this=0x7f0d44fb9e40, exec=0xa0, number=@0x7fffe08cf4d0, result=@0x36b8480) at /usr/src/kde/x86_64-mutilate/kjs/object.cpp:362
#12 0x00007f0d352ca3dc in KJS::JSValue::getPrimitiveNumber (exec=0x7fffe08cfd10, v1=<value optimized out>, v2=0x7f0d4530b900) at /usr/src/kde/x86_64-mutilate/kjs/value.h:470
#13 KJS::relation (exec=0x7fffe08cfd10, v1=<value optimized out>, v2=0x7f0d4530b900) at /usr/src/kde/x86_64-mutilate/kjs/operations.cpp:205
#14 0x00007f0d353014cd in KJS::Machine::runBlock (exec=0x7fffe08cfd10, codeBlock=<value optimized out>, parentExec=<value optimized out>) at codes.def:978
#15 0x00007f0d352e6557 in KJS::FunctionImp::callAsFunction (this=0x7f0d453037c0, exec=0x7fffe08d06f0, thisObj=<value optimized out>, args=<value optimized out>)
    at /usr/src/kde/x86_64-mutilate/kjs/function.cpp:144
#16 0x00007f0d352e9d49 in KJS::JSObject::call (this=0x7f0d44fb9e40, exec=0xb0, thisObj=0x7f0d44fb9e40, args=...) at /usr/src/kde/x86_64-mutilate/kjs/object.cpp:70
#17 0x00007f0d35305f8b in KJS::Machine::runBlock (exec=0x7fffe08d06f0, codeBlock=<value optimized out>, parentExec=<value optimized out>) at codes.def:1192
#18 0x00007f0d352e6557 in KJS::FunctionImp::callAsFunction (this=0x7f0d4530b800, exec=0x7fffe08d1170, thisObj=<value optimized out>, args=<value optimized out>)
    at /usr/src/kde/x86_64-mutilate/kjs/function.cpp:144
#19 0x00007f0d352e9d49 in KJS::JSObject::call (this=0x7f0d44fb9e40, exec=0xb0, thisObj=0x7f0d44fb9e40, args=...) at /usr/src/kde/x86_64-mutilate/kjs/object.cpp:70
#20 0x00007f0d35305f8b in KJS::Machine::runBlock (exec=0x7fffe08d1170, codeBlock=<value optimized out>, parentExec=<value optimized out>) at codes.def:1192
#21 0x00007f0d352bc343 in KJS::FunctionBodyNode::execute (this=0x36d4010, exec=0x7fffe08d1170) at /usr/src/kde/x86_64-mutilate/kjs/nodes.cpp:927
#22 0x00007f0d352ecbea in KJS::Interpreter::evaluate (this=0x3085d40, sourceURL=..., startingLineNumber=0, code=<value optimized out>, codeLength=<value optimized out>, thisV=0x7f0d45310000)
    at /usr/src/kde/x86_64-mutilate/kjs/interpreter.cpp:556
#23 0x00007f0d352ecd53 in KJS::Interpreter::evaluate (this=0xa0, sourceURL=..., startingLineNumber=57377920, code=<value optimized out>, thisV=<value optimized out>)
    at /usr/src/kde/x86_64-mutilate/kjs/interpreter.cpp:496
#24 0x00007f0d35bcd7c0 in KJS::KJSProxyImpl::evaluate (this=0x2e26e30, filename=DWARF-2 expression error: DW_OP_reg operations must be used either alone or in conjuction with DW_OP_piece.
) at /usr/src/kde/x86_64-mutilate/khtml/ecma/kjs_proxy.cpp:158
#25 0x00007f0d35977340 in KHTMLPart::executeScript (this=0x228e310, filename=..., baseLine=0, n=<value optimized out>, script=<value optimized out>)
    at /usr/src/kde/x86_64-mutilate/khtml/khtml_part.cpp:1323
#26 0x00007f0d35a279c2 in khtml::HTMLTokenizer::scriptExecution (this=0x35ee1e0, str=..., scriptURL=<value optimized out>, baseLine=0) at /usr/src/kde/x86_64-mutilate/khtml/html/htmltokenizer.cpp:501
#27 0x00007f0d35a2c1d9 in khtml::HTMLTokenizer::notifyFinished (this=0x35ee1e0) at /usr/src/kde/x86_64-mutilate/khtml/html/htmltokenizer.cpp:2122
#28 0x00007f0d35b4838f in khtml::CachedScript::checkNotify (this=0x3729f00) at /usr/src/kde/x86_64-mutilate/khtml/misc/loader.cpp:390
#29 0x00007f0d35b4c26c in khtml::CachedScript::data (this=0x3729f00, buffer=<value optimized out>, eof=<value optimized out>) at /usr/src/kde/x86_64-mutilate/khtml/misc/loader.cpp:382
#30 0x00007f0d35b4bd6f in khtml::Loader::slotFinished (this=0x2165610, job=0x36e6e20) at /usr/src/kde/x86_64-mutilate/khtml/misc/loader.cpp:1461
#31 0x00007f0d35b4c0b3 in khtml::Loader::qt_metacall (this=0x2165610, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fffe08d1bd0)
    at /usr/src/kde/x86_64-mutilate/build/khtml/loader.moc:143
#32 0x00007f0d42b50edf in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#33 0x00007f0d42f4f882 in KJob::result (this=0x7f0d44fb9e40, _t1=0x36e6e20) at /usr/src/kde/x86_64-mutilate/build/kdecore/kjob.moc:194
#34 0x00007f0d42f4fb20 in KJob::emitResult (this=0x36e6e20) at /usr/src/kde/x86_64-mutilate/kdecore/jobs/kjob.cpp:312
#35 0x00007f0d43c5e7f3 in KIO::SimpleJob::slotFinished (this=0x36e6e20) at /usr/src/kde/x86_64-mutilate/kio/kio/job.cpp:517
#36 0x00007f0d43c5f1b7 in KIO::TransferJob::slotFinished (this=0x36e6e20) at /usr/src/kde/x86_64-mutilate/kio/kio/job.cpp:1097
#37 0x00007f0d43c5c851 in KIO::TransferJob::qt_metacall (this=0x36e6e20, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fffe08d1fe0)
    at /usr/src/kde/x86_64-mutilate/build/kio/jobclasses.moc:367
#38 0x00007f0d42b50edf in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#39 0x00007f0d43d1faf1 in KIO::SlaveInterface::dispatch (this=0x367bff0, _cmd=104, rawdata=...) at /usr/src/kde/x86_64-mutilate/kio/kio/slaveinterface.cpp:175
#40 0x00007f0d43d1ce7d in KIO::SlaveInterface::dispatch (this=0x367bff0) at /usr/src/kde/x86_64-mutilate/kio/kio/slaveinterface.cpp:91
#41 0x00007f0d43d11316 in KIO::Slave::gotInput (this=0x367bff0) at /usr/src/kde/x86_64-mutilate/kio/kio/slave.cpp:324
#42 0x00007f0d43d114fc in KIO::Slave::qt_metacall (this=0x367bff0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fffe08d2410) at /usr/src/kde/x86_64-mutilate/build/kio/slave.moc:82
#43 0x00007f0d42b50edf in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#44 0x00007f0d43c2d2c7 in KIO::ConnectionPrivate::dequeue (this=0x383e200) at /usr/src/kde/x86_64-mutilate/kio/kio/connection.cpp:82
#45 0x00007f0d43c2d3ed in KIO::Connection::qt_metacall (this=0x231db70, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x2e0e830)
    at /usr/src/kde/x86_64-mutilate/build/kio/connection.moc:79
#46 0x00007f0d42b4dde9 in QObject::event(QEvent*) () from /usr/lib/libQtCore.so.4
#47 0x00007f0d41c7b52c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
---Type <return> to continue, or q <return> to quit---
#48 0x00007f0d41c81a3b in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#49 0x00007f0d435115e6 in KApplication::notify (this=0x7fffe08d3070, receiver=0x231db70, event=0x37d65d0) at /usr/src/kde/x86_64-mutilate/kdeui/kernel/kapplication.cpp:302
#50 0x00007f0d42b3e20b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
#51 0x00007f0d42b40956 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/libQtCore.so.4
#52 0x00007f0d42b67aa3 in ?? () from /usr/lib/libQtCore.so.4
#53 0x00007f0d3e0fda07 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#54 0x00007f0d3e100b68 in g_main_context_iterate () from /usr/lib/libglib-2.0.so.0
#55 0x00007f0d3e100c90 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#56 0x00007f0d42b675e3 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#57 0x00007f0d41d2a09e in ?? () from /usr/lib/libQtGui.so.4
#58 0x00007f0d42b3cb62 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#59 0x00007f0d42b3cf34 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#60 0x00007f0d42b40c1b in QCoreApplication::exec() () from /usr/lib/libQtCore.so.4
#61 0x00007f0d45081451 in kdemain (argc=<value optimized out>, argv=<value optimized out>) at /usr/src/kde/x86_64-mutilate/apps/konqueror/src/konqmain.cpp:257
#62 0x00007f0d44c87c0d in __libc_start_main () from /lib/libc.so.6
#63 0x0000000000400629 in _start ()

I find it blackly amusing that even the *source code* is saying 'wtf' at this point. ;)

I'm going to start scattering cout<<s around the place to see where and why it's looping, I think. More tomorrow...
Comment 4 Nix 2010-04-17 01:05:47 UTC
Correction: more *this* weekend. Sorry, emergency no-notice trip took a chunk out of my life.
Comment 5 Nix 2010-04-24 18:19:35 UTC
The loop is in KJS::Machine::runBlock().

Why it's looping remains to be determined.
Comment 6 Christoph Feck 2013-09-12 21:43:41 UTC
This crash report is at least 3 years old and there were no further comments or status updates since then.

Therefore we believe that this crash is already fixed in recent KDE 4 versions or the backtrace is no longer applicable to the current KDE 4 sources.

If the crash still happens with a recent KDE version (4.10.5 or 4.11), please add an updated backtrace or provide steps to reproduce. For more information, see http://techbase.kde.org/Development/Tutorials/Debugging/How_to_create_useful_crash_reports

(To prevent automatic closing of this bug in the future, please set the bug status to ASSIGNED or CONFIRMED)
Comment 7 Andrew Crouthamel 2018-09-24 02:09:10 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information as soon as possible and set the bug status as REPORTED. Due to regular bug tracker maintenance, if the bug is still in NEEDSINFO status with no change in 30 days, the bug will be closed as RESOLVED > WORKSFORME due to lack of needed information.

For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

If you have already provided the requested information, please set the bug status as REPORTED so that the KDE team knows that the bug is ready to be confirmed.

Thank you for helping us make KDE software even better for everyone!
Comment 8 Andrew Crouthamel 2018-10-27 03:44:56 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least 30 days. The bug is now closed as RESOLVED > WORKSFORME due to lack of needed information.

For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

Thank you for helping us make KDE software even better for everyone!