Bug 70468

Summary: crash when reloading a page after refusing to open a wallet
Product: [Applications] konqueror Reporter: Arnaud Burlet <arnaud_oss>
Component: generalAssignee: Konqueror Developers <konq-bugs>
Status: RESOLVED DUPLICATE    
Severity: crash    
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Gentoo Packages   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: valgrind session of the crash

Description Arnaud Burlet 2003-12-15 04:13:57 UTC
Version:            (using KDE KDE 3.1.94)
Installed from:    Gentoo Packages
Compiler:          gcc 3.2.3 gcc version 3.2.3 20030422 (Gentoo Linux 1.4 3.2.3-r3, propolice)
OS:          Linux

Background : I've got an account on the following site. My l/p are recorded in kwallet. The wallet is closed.

how to reproduce :

1 : go to site http://www.kochonland.com
2 : before the page finishes loading, type the first char of your login in the first text field. (a dropdown list with the available completions appears)
3 : wait until a dialog box prompts you to enter your password to unlock your (k)wallet.
4 : click cancel in the dlg box seen in 3.
5 : hit the reload button
6 : kmail crashes, if not goto 2 (maximum twice and you've got a crash)
Comment 1 Arnaud Burlet 2003-12-15 04:15:17 UTC
Backtrace of the crash

[New Thread 16384 (LWP 4488)]
0x413b3137 in waitpid () from /lib/libpthread.so.0
#0  0x413b3137 in waitpid () from /lib/libpthread.so.0
#1  0x407b3b1d in KCrash::defaultCrashHandler(int) (sig=11) at kcrash.cpp:246
#2  0x413b1fea in __pthread_sighandler () from /lib/libpthread.so.0
#3  <signal handler called>
#4  0x46811ca9 in ~KHTMLPart (this=0xbfffd12c) at khtml_part.cpp:415
#5  0x4003d81b in KParts::Part::slotWidgetDestroyed() (this=0x857bc00)
    at part.cpp:267
#6  0x4003f66a in KParts::Part::qt_invoke(int, QUObject*) (this=0x857bc00, 
    _id=2, _o=0xfffffe00) at part.moc:108
#7  0x4003facb in KParts::ReadOnlyPart::qt_invoke(int, QUObject*) (
    this=0x857bc00, _id=2, _o=0x857bc00) at part.moc:261
#8  0x4682dca3 in KHTMLPart::qt_invoke(int, QUObject*) (this=0x857bc00, _id=2, 
    _o=0x857bc00) at khtml_part.moc:531
#9  0x40c4f628 in QObject::activate_signal(QConnectionList*, QUObject*) (
    this=0x83840e8, clist=0x83acb78, o=0xbfffd650) at kernel/qobject.cpp:2357
#10 0x40c4f346 in QObject::activate_signal(int) (this=0x83840e8, signal=0)
    at kernel/qobject.cpp:2302
#11 0x4101f534 in QObject::destroyed() (this=0x83840e8)
    at .moc/debug-shared-mt/moc_qobject.cpp:102
#12 0x40c4b8dc in ~QObject (this=0x83840e8) at kernel/qobject.cpp:446
#13 0x40c8b5c8 in ~QWidget (this=0x83840e8) at kernel/qwidget.cpp:933
#14 0x402e2bf8 in ~QFrame (this=0xfffffe00) at kurlbar.cpp:296
#15 0x40d9a538 in ~QScrollView (this=0x83840e8) at widgets/qscrollview.cpp:635
#16 0x467fcba3 in ~KHTMLView (this=0x857bc00) at khtmlview.cpp:350
#17 0x40c4c81a in QObject::event(QEvent*) (this=0x83840e8, e=0x842cb58)
    at kernel/qobject.cpp:750
#18 0x40c91d05 in QWidget::event(QEvent*) (this=0x83840e8, e=0x842cb58)
    at kernel/qwidget.cpp:4408
#19 0x40bddb95 in QApplication::internalNotify(QObject*, QEvent*) (
    this=0xbfffef60, receiver=0x83840e8, e=0x842cb58)
    at kernel/qapplication.cpp:2582
#20 0x40bdd807 in QApplication::notify(QObject*, QEvent*) (this=0xbfffef60, 
    receiver=0x83840e8, e=0x842cb58) at kernel/qapplication.cpp:2470
#21 0x4072bab9 in KApplication::notify(QObject*, QEvent*) (this=0xbfffef60, 
    receiver=0x83840e8, event=0x842cb58) at kapplication.cpp:509
#22 0x40048c2d in QApplication::sendEvent(QObject*, QEvent*) (
    receiver=0xfffffe00, event=0x0) at qapplication.h:492
#23 0x40bdecaa in QApplication::sendPostedEvents(QObject*, int) (receiver=0x0, 
    event_type=0) at kernel/qapplication.cpp:3204
#24 0x40bdea60 in QApplication::sendPostedEvents() ()
    at kernel/qapplication.cpp:3115
#25 0x40b78a80 in QEventLoop::processEvents(unsigned) (this=0x80e16f0, 
    flags=15) at kernel/qeventloop_x11.cpp:144
#26 0x40b68a57 in qt_xclb_wait_for_event(_XDisplay*, unsigned long, int, _XEvent*, int) (dpy=0x8069d38, win=39846097, type=31, event=0xbfffdca0, timeout=5000)
    at kernel/qclipboard_x11.cpp:479
#27 0x40b6ba89 in QClipboardWatcher::getDataInFormat(unsigned long) const (
    this=0x83fd318, fmtatom=364) at kernel/qclipboard_x11.cpp:1381
#28 0x40b6afda in QClipboardWatcher::format(int) const (this=0x83fd318, n=0)
    at kernel/qclipboard_x11.cpp:1249
#29 0x40c3dbc8 in QMimeSource::provides(char const*) const (this=0x83fd318, 
    mimeType=0x469c9cd7 "text/plain") at kernel/qmime.cpp:134
#30 0x4683ebd1 in KHTMLPartBrowserExtension::updateEditActions() (
    this=0x846b968) at khtml_ext.cpp:266
#31 0x4683e671 in KHTMLPartBrowserExtension::setExtensionProxy(KParts::BrowserExtension*) (this=0x846b968, proxy=0xfffffe00) at khtml_ext.cpp:174
#32 0x4682b900 in KHTMLPart::slotActiveFrameChanged(KParts::Part*) (
    this=0x846b968, part=0x8483470) at khtml_part.cpp:5800
#33 0x4682d90c in KHTMLPart::qt_invoke(int, QUObject*) (this=0x857bc00, _id=0, 
    _o=0xbfffdfb0) at khtml_part.moc:504
#34 0x40c4f4ee in QObject::activate_signal(QConnectionList*, QUObject*) (
    this=0x842c230, clist=0x83854e8, o=0xbfffdfb0) at kernel/qobject.cpp:2333
#35 0x400479d2 in KParts::PartManager::activePartChanged(KParts::Part*) (
    this=0x842c230, t0=0xfffffe00) at partmanager.moc:156
#36 0x40047102 in KParts::PartManager::setActivePart(KParts::Part*, QWidget*) (
    this=0x842c230, part=0x0, widget=0x0) at partmanager.cpp:443
#37 0x46811c7e in ~KHTMLPart (this=0x857bc00) at khtml_part.cpp:415
#38 0x46815563 in KHTMLPart::clear() (this=0x82ecc88) at khtml_part.cpp:1208
#39 0x46817532 in KHTMLPart::begin(KURL const&, int, int) (this=0x82ecc88, 
    url=@0x8345df8, xOffset=-512, yOffset=-512) at khtml_part.cpp:1605
#40 0x46815d30 in KHTMLPart::slotData(KIO::Job*, QMemArray<char> const&) (
    this=0x82ecc88, kio_job=0x84ecd20, data=@0xbfffe750) at khtml_part.cpp:1325
#41 0x4682d5e3 in KHTMLPart::qt_invoke(int, QUObject*) (this=0x82ecc88, 
    _id=-1073748144, _o=0xbfffe43c) at khtml_part.moc:469
#42 0x40c4f4ee in QObject::activate_signal(QConnectionList*, QUObject*) (
    this=0x84ecd20, clist=0x83bc330, o=0xbfffe410) at kernel/qobject.cpp:2333
#43 0x401d6e19 in KIO::TransferJob::data(KIO::Job*, QMemArray<char> const&) (
    this=0x84ecd20, t0=0xfffffe00, t1=@0xfffffe00) at jobclasses.moc:722
#44 0x401c6e35 in KIO::TransferJob::slotData(QMemArray<char> const&) (
    this=0xbfffe43c, _data=@0xfffffe00) at job.cpp:790
#45 0x401d73c6 in KIO::TransferJob::qt_invoke(int, QUObject*) (this=0x84ecd20, 
    _id=-1073748916, _o=0xbfffe43c) at jobclasses.moc:801
#46 0x40c4f4ee in QObject::activate_signal(QConnectionList*, QUObject*) (
    this=0x84dc698, clist=0x854b380, o=0xbfffe540) at kernel/qobject.cpp:2333
#47 0x401b6dff in KIO::SlaveInterface::data(QMemArray<char> const&) (
    this=0x84dc698, t0=@0xfffffe00) at slaveinterface.moc:194
#48 0x401b57db in KIO::SlaveInterface::dispatch(int, QMemArray<char> const&) (
    this=0x84dc698, _cmd=100, rawdata=@0x84dc698) at slaveinterface.cpp:246
#49 0x401b554b in KIO::SlaveInterface::dispatch() (this=0x84dc698)
    at slaveinterface.cpp:191
#50 0x401b348d in KIO::Slave::gotInput() (this=0xbfffe750) at slave.cpp:294
#51 0x401b4bc8 in KIO::Slave::qt_invoke(int, QUObject*) (this=0xbfffe750, 
    _id=139314840, _o=0xbfffe8d0) at slave.moc:113
#52 0x40c4f4ee in QObject::activate_signal(QConnectionList*, QUObject*) (
    this=0x854f1a0, clist=0x854b2b0, o=0xbfffe8d0) at kernel/qobject.cpp:2333
#53 0x40c4f95d in QObject::activate_signal(int, int) (this=0x854f1a0, 
    signal=2, param=33) at kernel/qobject.cpp:2426
#54 0x4102197b in QSocketNotifier::activated(int) (this=0x854f1a0, t0=33)
    at .moc/debug-shared-mt/moc_qsocketnotifier.cpp:85
#55 0x40c73f7b in QSocketNotifier::event(QEvent*) (this=0x854f1a0, 
    e=0xbfffeba0) at kernel/qsocketnotifier.cpp:271
#56 0x40bddb95 in QApplication::internalNotify(QObject*, QEvent*) (
    this=0xbfffef60, receiver=0x854f1a0, e=0xbfffeba0)
    at kernel/qapplication.cpp:2582
#57 0x40bdcdd8 in QApplication::notify(QObject*, QEvent*) (this=0xbfffef60, 
    receiver=0x854f1a0, e=0xbfffeba0) at kernel/qapplication.cpp:2305
#58 0x4072bab9 in KApplication::notify(QObject*, QEvent*) (this=0xbfffef60, 
    receiver=0x854f1a0, event=0xbfffeba0) at kapplication.cpp:509
#59 0x40048c2d in QApplication::sendEvent(QObject*, QEvent*) (
    receiver=0xfffffe00, event=0x0) at qapplication.h:492
#60 0x40bc9027 in QEventLoop::activateSocketNotifiers() (this=0x80e16f0)
    at kernel/qeventloop_unix.cpp:579
#61 0x40b79468 in QEventLoop::processEvents(unsigned) (this=0x80e16f0, flags=4)
    at kernel/qeventloop_x11.cpp:340
#62 0x40bf70e1 in QEventLoop::enterLoop() (this=0x80e16f0)
    at kernel/qeventloop.cpp:198
#63 0x40bf6ffa in QEventLoop::exec() (this=0x80e16f0)
    at kernel/qeventloop.cpp:145
#64 0x40bddd53 in QApplication::exec() (this=0xbfffef60)
    at kernel/qapplication.cpp:2705
#65 0x4195e5a6 in kdemain (argc=-512, argv=0xfffffe00) at konq_main.cc:177
#66 0x408b18f6 in kdeinitmain (argc=-512, argv=0xfffffe00)
    at konqueror_dummy.cc:2
#67 0x0804e7b1 in launch (argc=2, _name=0x8062b7c "konqueror", 
    args=0x408b18d0 "U\211
Comment 2 Arnaud Burlet 2003-12-15 04:25:10 UTC
Created attachment 3711 [details]
valgrind session of the crash

line 906 is certainly interresting
Comment 3 Thiago Macieira 2003-12-15 15:29:28 UTC
Your valgrind attachment has incorrect MIME type, so I can't read it. Can you fix the attachment?

As for the crash, it's still the same as bug #70430: KParts::Part::slotWidgetDestroyed() at part.cpp:267. I am therefore marking this bug a duplicate of that one. I don't suppose you pasted the wrong backtrace again...

*** This bug has been marked as a duplicate of 70430 ***
Comment 4 Arnaud Burlet 2003-12-15 15:53:15 UTC
The valgrind log indicates the same line : part.cpp:267. And this is the correct stacktrace, so this is really a duplicate, no need to post the valgrind log again.