Version: 4.1.1 (KDE 4.1.1) (using 4.1.1 (KDE 4.1.1), Kubuntu packages) Compiler: gcc OS: Linux (i686) release 2.6.24-19-rt Steps to reproduce: 1. Open some tabs in konqueror 2. Save the session 3. Close konqueror 4. Open konqueror 5. Load previous stored session (File->Sessions) Konqueror crashes with following bt. Bt: Anwendung: Konqueror (konqueror), Signal SIGABRT (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) [Thread debugging using libthread_db enabled] [New Thread 0xb60f3940 (LWP 25265)] [KCrash handler] #6 0xb7fdf410 in __kernel_vsyscall () #7 0xb7dbb085 in raise () from /lib/tls/i686/cmov/libc.so.6 #8 0xb7dbca01 in abort () from /lib/tls/i686/cmov/libc.so.6 #9 0xb740b367 in qt_message_output (msgType=QtFatalMsg, buf=0xbf804dfc "ASSERT: \"w\" in file /build/buildd/kdebase-kde4-4.1.1/apps/konqueror/src/konqviewmanager.cpp, line 1258") at global/qglobal.cpp:2061 #10 0xb740b458 in qFatal (msg=0xb7552498 "ASSERT: \"%s\" in file %s, line %d") at global/qglobal.cpp:2263 #11 0xb740b505 in qt_assert (assertion=0xb7fcc473 "w", file=0xb7fc8cb4 "/build/buildd/kdebase-kde4-4.1.1/apps/konqueror/src/konqviewmanager.cpp", line=1258) at global/qglobal.cpp:1831 #12 0xb7f51c75 in KonqViewManager::loadItem () from /usr/lib/kde4/lib/libkdeinit4_konqueror.so #13 0xb7f52907 in KonqViewManager::loadRootItem () from /usr/lib/kde4/lib/libkdeinit4_konqueror.so #14 0xb7f54d7f in KonqViewManager::openSavedWindow () from /usr/lib/kde4/lib/libkdeinit4_konqueror.so #15 0xb7fb3393 in ?? () from /usr/lib/kde4/lib/libkdeinit4_konqueror.so #16 0xb7fb34b3 in ?? () from /usr/lib/kde4/lib/libkdeinit4_konqueror.so #17 0xb7f8a14a in KonqMainWindow::slotSessionActivated () from /usr/lib/kde4/lib/libkdeinit4_konqueror.so #18 0xb7f9acbd in KonqMainWindow::qt_metacall () from /usr/lib/kde4/lib/libkdeinit4_konqueror.so #19 0xb7513f79 in QMetaObject::activate (sender=0x842b1f8, from_signal_index=4, to_signal_index=4, argv=0xbf80739c) at kernel/qobject.cpp:3016 #20 0xb7514642 in QMetaObject::activate (sender=0x842b1f8, m=0xb71bb5e4, local_signal_index=0, argv=0xbf80739c) at kernel/qobject.cpp:3086 #21 0xb69dfec3 in QActionGroup::triggered (this=0x842b1f8, _t1=0x879ed78) at .moc/release-shared/moc_qactiongroup.cpp:138 #22 0xb69e0358 in QActionGroupPrivate::_q_actionTriggered (this=0x842b208) at kernel/qactiongroup.cpp:89 #23 0xb69e0910 in QActionGroup::qt_metacall (this=0x842b1f8, _c=QMetaObject::InvokeMetaMethod, _id=7, _a=0xbf8074dc) at .moc/release-shared/moc_qactiongroup.cpp:94 #24 0xb7513f79 in QMetaObject::activate (sender=0x879ed78, from_signal_index=5, to_signal_index=6, argv=0xbf8074dc) at kernel/qobject.cpp:3016 #25 0xb75143b0 in QMetaObject::activate (sender=0x879ed78, m=0xb71bb558, from_local_signal_index=1, to_local_signal_index=2, argv=0xbf8074dc) at kernel/qobject.cpp:3106 #26 0xb69db151 in QAction::triggered (this=0x879ed78, _t1=false) at .moc/release-shared/moc_qaction.cpp:216 #27 0xb69dbb2f in QAction::activate (this=0x879ed78, event=QAction::Trigger) at kernel/qaction.cpp:1119 #28 0xb6dbd4c1 in QMenuPrivate::activateAction (this=0x842ac50, action=0x879ed78, action_e=QAction::Trigger, self=true) at widgets/qmenu.cpp:1005 #29 0xb6dbfd24 in QMenu::mouseReleaseEvent (this=0x842a8f8, e=0xbf807c2c) at widgets/qmenu.cpp:2169 #30 0xb7a38149 in KMenu::mouseReleaseEvent (this=0x842a8f8, e=0xbf807c2c) at /build/buildd/kde4libs-4.1.1+really4.1.1/kdeui/widgets/kmenu.cpp:452 #31 0xb6a39d44 in QWidget::event (this=0x842a8f8, event=0xbf807c2c) at kernel/qwidget.cpp:7021 #32 0xb6dbae45 in QMenu::event (this=0x842a8f8, e=0xbf807c2c) at widgets/qmenu.cpp:2265 #33 0xb69e1f9c in QApplicationPrivate::notify_helper (this=0x805ccd8, receiver=0x842a8f8, e=0xbf807c2c) at kernel/qapplication.cpp:3800 #34 0xb69e7125 in QApplication::notify (this=0xbf8085cc, receiver=0x842a8f8, e=0xbf807c2c) at kernel/qapplication.cpp:3527 #35 0xb797d1c3 in KApplication::notify (this=0xbf8085cc, receiver=0x842a8f8, event=0xbf807c2c) at /build/buildd/kde4libs-4.1.1+really4.1.1/kdeui/kernel/kapplication.cpp:311 #36 0xb74ff0b9 in QCoreApplication::notifyInternal (this=0xbf8085cc, receiver=0x842a8f8, event=0xbf807c2c) at kernel/qcoreapplication.cpp:591 #37 0xb69e4661 in QApplicationPrivate::sendMouseEvent (receiver=0x842a8f8, event=0xbf807c2c, alienWidget=0x0, nativeWidget=0x842a8f8, buttonDown=0xb71d7a10, lastMouseReceiver=@0xb71d7a14) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:218 #38 0xb6a4e76c in QETWidget::translateMouseEvent (this=0x842a8f8, event=0xbf808148) at kernel/qapplication_x11.cpp:3982 #39 0xb6a4cee1 in QApplication::x11ProcessEvent (this=0xbf8085cc, event=0xbf808148) at kernel/qapplication_x11.cpp:3166 #40 0xb6a75c2a in x11EventSourceDispatch (s=0x8060040, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:148 #41 0xb6463dd6 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0 #42 0xb6467193 in ?? () from /usr/lib/libglib-2.0.so.0 #43 0xb646774e in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0 #44 0xb752a9f8 in QEventDispatcherGlib::processEvents (this=0x805cd90, flags=@0xbf8082e8) at kernel/qeventdispatcher_glib.cpp:325 #45 0xb6a75a25 in QGuiEventDispatcherGlib::processEvents (this=0x805cd90, flags=@0xbf808318) at kernel/qguieventdispatcher_glib.cpp:204 #46 0xb74fe33d in QEventLoop::processEvents (this=0xbf808390, flags=@0xbf808354) at kernel/qeventloop.cpp:149 #47 0xb74fe4cd in QEventLoop::exec (this=0xbf808390, flags=@0xbf808398) at kernel/qeventloop.cpp:200 #48 0xb750074d in QCoreApplication::exec () at kernel/qcoreapplication.cpp:849 #49 0xb69e1897 in QApplication::exec () at kernel/qapplication.cpp:3330 #50 0xb7fc582d in kdemain () from /usr/lib/kde4/lib/libkdeinit4_konqueror.so #51 0x08048582 in _start () #0 0xb7fdf410 in __kernel_vsyscall ()
I use saved sessions all the time and they work for me, perhaps it's a special webpage or saved configuration that is failing to you? You could perhaps attach the session if you don't mind so that we can try to reproduce. The session is a directory at $KDEHOME/share/apps/konqueror/sessions/<session name> (which is usually set to ~/.kde4).
Created attachment 27526 [details] incomplete session file results in crash with above bt Ok, so I looked into this directory and there are two files. One has all the session information and one is somehow not complete. If I delete the incomplete one, session restore works perfectly. I'll attach the incomplete one. It has Tabs0_activeChildIndex=-1 set, maybe this is the problem?
Each file inside your session directory represents a different konqueror process. I wonder how a konqueror process ended up writting a config file like the one you attached uhm. Perhaps you know how to reproduce that?
I have crashes of konqueror a couple of times daily. Maybe I saved the session and then closed konqueror and it crashed? I can't remember... I will try to reproduce. However, konqueror should not crash when having to read an incomplete or broken session file.
SVN commit 984427 by edulix: Don't crash if can't et current index, just give a warning instead CCMAIL:faure@kde.org BUG:171500 M +8 -4 konqviewmanager.cpp WebSVN link: http://websvn.kde.org/?view=rev&revision=984427