Bug 294323 - Crash when moving around in google book (in QWebFrame::parentFrame)
Summary: Crash when moving around in google book (in QWebFrame::parentFrame)
Status: RESOLVED WORKSFORME
Alias: None
Product: kwebkitpart
Classification: Frameworks and Libraries
Component: general (show other bugs)
Version: 1.2.0
Platform: Debian unstable Linux
: NOR crash
Target Milestone: ---
Assignee: webkit-devel
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-02-17 23:05 UTC by Raúl
Modified: 2012-04-16 22:50 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 Raúl 2012-02-17 23:05:06 UTC
Application: konqueror (4.7.4 (4.7.4))
KDE Platform Version: 4.7.4 (4.7.4)
Qt Version: 4.7.4
Operating System: Linux 3.2.5 x86_64
Distribution: Debian GNU/Linux unstable (sid)

-- Information about the crash:
I was reading a book in google books. I got there through a google web search. When I was scrolling around the book I got the crash. I also had a lot of tabs opened.

Regards,

-- Backtrace:
Application: Konqueror (konqueror), signal: Segmentation fault
[Current thread is 1 (Thread 0x7f388d205760 (LWP 19108))]

Thread 5 (Thread 0x7f3871b76700 (LWP 19113)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f387419af2c in WTF::TCMalloc_PageHeap::scavengerThread() () from /usr/lib/libQtWebKit.so.4
#2  0x00007f387419b059 in WTF::TCMalloc_PageHeap::runScavengerThread(void*) () from /usr/lib/libQtWebKit.so.4
#3  0x00007f388608fb50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#4  0x00007f388ca9790d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5  0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7f3871275700 (LWP 19114)):
#0  0x00007f38855bdd7e in g_main_context_acquire (context=<optimized out>) at /tmp/buildd/glib2.0-2.30.2/./glib/gmain.c:2549
#1  0x00007f38855bf3f1 in g_main_context_iterate (context=0x35ac610, block=1, dispatch=1, self=<optimized out>) at /tmp/buildd/glib2.0-2.30.2/./glib/gmain.c:3020
#2  0x00007f38855bfa99 in g_main_context_iteration (context=0x35ac610, may_block=1) at /tmp/buildd/glib2.0-2.30.2/./glib/gmain.c:3139
#3  0x00007f388a53ee96 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#4  0x00007f388a513492 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#5  0x00007f388a51368f in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#6  0x00007f388a42b30f in QThread::exec() () from /usr/lib/libQtCore.so.4
#7  0x00007f388a42dcf5 in QThreadPrivate::start(void*) () from /usr/lib/libQtCore.so.4
#8  0x00007f388608fb50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#9  0x00007f388ca9790d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#10 0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7f386b914700 (LWP 24612)):
#0  0x00007f388609362e in __pthread_mutex_unlock_usercnt (mutex=0x4afe618, decr=<optimized out>) at pthread_mutex_unlock.c:52
#1  0x00007f38855be7a4 in g_main_context_prepare (context=0x4afe610, priority=0x7f386b913cc8) at /tmp/buildd/glib2.0-2.30.2/./glib/gmain.c:2788
#2  0x00007f38855bf46d in g_main_context_iterate (context=0x4afe610, block=1, dispatch=1, self=<optimized out>) at /tmp/buildd/glib2.0-2.30.2/./glib/gmain.c:3056
#3  0x00007f38855bfa99 in g_main_context_iteration (context=0x4afe610, may_block=1) at /tmp/buildd/glib2.0-2.30.2/./glib/gmain.c:3139
#4  0x00007f388a53ee96 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#5  0x00007f388a513492 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#6  0x00007f388a51368f in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#7  0x00007f388a42b30f in QThread::exec() () from /usr/lib/libQtCore.so.4
#8  0x00007f388b7cea1e in KIO::NameLookUpThread::run (this=0x3a04230) at ../../kio/kio/hostinfo.cpp:226
#9  0x00007f388a42dcf5 in QThreadPrivate::start(void*) () from /usr/lib/libQtCore.so.4
#10 0x00007f388608fb50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#11 0x00007f388ca9790d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#12 0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7f382019a700 (LWP 16578)):
#0  __pthread_mutex_lock (mutex=0x7f38042ac8d8) at pthread_mutex_lock.c:47
#1  0x00007f38855bef32 in g_main_context_dispatch (context=0x7f38042ac8d0) at /tmp/buildd/glib2.0-2.30.2/./glib/gmain.c:2994
#2  0x00007f38855bf8c8 in g_main_context_iterate (context=0x7f38042ac8d0, block=<optimized out>, dispatch=1, self=<optimized out>) at /tmp/buildd/glib2.0-2.30.2/./glib/gmain.c:3076
#3  0x00007f38855bfa99 in g_main_context_iteration (context=0x7f38042ac8d0, may_block=1) at /tmp/buildd/glib2.0-2.30.2/./glib/gmain.c:3139
#4  0x00007f388a53ee96 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#5  0x00007f388a513492 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#6  0x00007f388a51368f in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#7  0x00007f388a42b30f in QThread::exec() () from /usr/lib/libQtCore.so.4
#8  0x00007f388a4f635f in QInotifyFileSystemWatcherEngine::run() () from /usr/lib/libQtCore.so.4
#9  0x00007f388a42dcf5 in QThreadPrivate::start(void*) () from /usr/lib/libQtCore.so.4
#10 0x00007f388608fb50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#11 0x00007f388ca9790d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#12 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7f388d205760 (LWP 19108)):
[KCrash Handler]
#6  0x00007f38738bcb20 in QWebFrame::parentFrame() const () from /usr/lib/libQtWebKit.so.4
#7  0x00007f3874ddf5d8 in WebView::partActionPopupMenu(QMap<QString, QList<QAction*> >&) () from /usr/lib/kde4/kwebkitpart.so
#8  0x00007f3874dde96e in WebView::contextMenuEvent(QContextMenuEvent*) () from /usr/lib/kde4/kwebkitpart.so
#9  0x00007f38896be0a0 in QWidget::event(QEvent*) () from /usr/lib/libQtGui.so.4
#10 0x00007f38738d8a97 in QWebView::event(QEvent*) () from /usr/lib/libQtWebKit.so.4
#11 0x00007f388966dc64 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#12 0x00007f3889672fdc in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#13 0x00007f388af95ae6 in KApplication::notify (this=0x7fffe5e1b000, receiver=0x10b13c30, event=0x7fffe5e1a380) at ../../kdeui/kernel/kapplication.cpp:311
#14 0x00007f388a51428c in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
#15 0x00007f38896eb17b in QETWidget::translateMouseEvent(_XEvent const*) () from /usr/lib/libQtGui.so.4
#16 0x00007f38896e9f1a in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib/libQtGui.so.4
#17 0x00007f3889712252 in x11EventSourceDispatch(_GSource*, int (*)(void*), void*) () from /usr/lib/libQtGui.so.4
#18 0x00007f38855bf0cf in g_main_dispatch (context=0x22324e0) at /tmp/buildd/glib2.0-2.30.2/./glib/gmain.c:2442
#19 g_main_context_dispatch (context=0x22324e0) at /tmp/buildd/glib2.0-2.30.2/./glib/gmain.c:2998
#20 0x00007f38855bf8c8 in g_main_context_iterate (context=0x22324e0, block=<optimized out>, dispatch=1, self=<optimized out>) at /tmp/buildd/glib2.0-2.30.2/./glib/gmain.c:3076
#21 0x00007f38855bfa99 in g_main_context_iteration (context=0x22324e0, may_block=1) at /tmp/buildd/glib2.0-2.30.2/./glib/gmain.c:3139
#22 0x00007f388a53ee2f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#23 0x00007f3889711eee in QGuiEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtGui.so.4
#24 0x00007f388a513492 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#25 0x00007f388a51368f in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#26 0x00007f388a517837 in QCoreApplication::exec() () from /usr/lib/libQtCore.so.4
#27 0x00007f388cdfecb2 in kdemain () from /usr/lib/kde4/libkdeinit/libkdeinit4_konqueror.so
#28 0x00007f388c9ddead in __libc_start_main (main=<optimized out>, argc=<optimized out>, ubp_av=<optimized out>, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffe5e1b8b8) at libc-start.c:228
#29 0x00000000004006c1 in _start ()

Reported using DrKonqi
Comment 1 Dawit Alemayehu 2012-02-18 06:59:40 UTC
What version of kwebkitpart is installed on your machine ? Oh wait you are using Debian! Then forget about it. The package that comes with Debian is utterly too old! Unfortunately unless there is a packaged release, they do not seem to provide the latest version of kwebkitpart hence the version you are using it too old (0.9.6).

kwebkitpart will eventually get moved into the base kdebase package. In fact it is one of my TODO items for KDE 4.9.0 release. Until then your only choices are toeither retrieve kwebkitpart[1][2] and compile it yourself or complain to your distro about this issue.

[1] https://projects.kde.org/news/88
[2] https://projects.kde.org/projects/extragear/base/kwebkitpart/repository/show?rev=v1.2.0
Comment 2 Raúl 2012-02-18 17:04:29 UTC
Hi:
Thanks for you fast answer. I forgot to tell that I'm using a self packaged post 1.2 version, git d38adca1162. BTW 1.1.0git80efcf77-1 is available @experimental. Sorry for this.
Anyway, is you think I should try with another version or I can do any other test, just let me know.

Beside this, I'll prod debian guys to update the current sid version.

Regards,
Comment 3 Dawit Alemayehu 2012-02-18 18:14:15 UTC
(In reply to comment #2)
> Hi:
> Thanks for you fast answer. I forgot to tell that I'm using a self packaged
> post 1.2 version, git d38adca1162. BTW 1.1.0git80efcf77-1 is available
> @experimental. Sorry for this.
> Anyway, is you think I should try with another version or I can do any other
> test, just let me know.

Ahh... Then this bug report is sort of valid. However, you are still using Qt 4.7.4 which comes with a very old version of QtWebKit. Is there anyway you can update your Qt version and see if the problem remains ? Also can you recompile the kwebkitpart package in "RelWithDebInfo" mode, i.e. cmake -DCMAKE_BUILD_TYPE="RelWithDebInfo" so that the backtrace will contain the line numbers ?
 
> Beside this, I'll prod debian guys to update the current sid version.
Comment 4 Dawit Alemayehu 2012-04-16 07:15:03 UTC
Waiting for reply to comment #3...
Comment 5 Raúl 2012-04-16 14:53:54 UTC
For better or worst I've been unable to reproduce the crash. I upgraded to Qt 4.8, I also have the debugging symbols for kwebkitpart installed now. As I say, no luck in reproducing. I'm now back to Qt 4.7, and again, no luck. 
If you can't think of a clue to to reproduce the bug I suggest closing the bug as irreproducible. Regards,