Bug 41609 - Crash using back button after opening a file in find result listing
Summary: Crash using back button after opening a file in find result listing
Status: RESOLVED DUPLICATE of bug 47503
Alias: None
Product: konqueror
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Compiled Sources Other
: NOR crash
Target Milestone: ---
Assignee: Konqueror Developers
URL:
Keywords:
: 42337 (view as bug list)
Depends on:
Blocks:
 
Reported: 2002-04-25 09:18 UTC by Andrea Aime
Modified: 2003-10-09 22:11 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Andrea Aime 2002-04-25 09:16:55 UTC
(*** This bug was imported into bugs.kde.org ***)

Package:           konqueror
Version:           KDE 3.0.5 CVS/CVSup/Snapshot
Severity:          normal
Installed from:    Compiled sources
Compiler:          Not Specified
OS:                Not Specified
OS/Compiler notes: Not Specified

I looked for a file containing a string
using the find tool in Konqueror opened
an html file in the results hit the
back button. First I see a "Malformed URL"
error in a message box then Konqueror crashes. Here's the backtrace:

[New Thread 1024 (LWP 3883)]
0x410d1409 in wait4 () from /lib/libc.so.6
#0  0x410d1409 in wait4 () from /lib/libc.so.6
#1  0x4115098c in __check_rhosts_file () from /lib/libc.so.6
#2  0x40f77d56 in waitpid (pid=4875 stat_loc=0x0 options=0)
    at wrapsyscall.c:172
#3  0x407175c2 in KCrash::defaultCrashHandler ()
   from /opt/kde3//lib/libkdecore.so.4
#4  0x40f755bb in pthread_sighandler (signo=11 ctx=
      {gs = 0 __gsh = 0 fs = 0 __fsh = 0 es = 43 __esh = 0 ds = 43 __dsh = 0 edi = 144227904 esi = 143635112 ebp = 3221214008 esp = 3221213952 ebx = 1077594252 edx = 745825639 ecx = 144786960 eax = 3221214032 trapno = 14 err = 4 eip = 1076354784 cs = 35 __csh = 0 eflags = 66050 esp_at_signal = 3221213952 ss = 43 __ssh = 0 fpstate = 0xbfffd080 oldmask = 2147483648 cr2 = 745825639}) at signals.c:97
#5  0x41044478 in killpg () from /lib/libc.so.6
#6  0x41527206 in KonqListView::determineIcon ()
   from /opt/kde3//lib/kde3/konq_listview.so
#7  0x4153e220 in KMimeTypeResolver<KonqBaseListViewItem KonqListView>::slotProcessMimeIcons () from /opt/kde3//lib/kde3/konq_listview.so
#8  0x4020cf8c in KMimeTypeResolverHelper::qt_invoke ()
   from /opt/kde3//lib/libkio.so.4
#9  0x40a26b24 in QObject::activate_signal () from /opt/qt3//lib/libqt-mt.so.3
#10 0x40a26a8e in QObject::activate_signal () from /opt/qt3//lib/libqt-mt.so.3
#11 0x40ce41c5 in QTimer::timeout () from /opt/qt3//lib/libqt-mt.so.3
#12 0x40a4113c in QTimer::event () from /opt/qt3//lib/libqt-mt.so.3
#13 0x409cf3f1 in QApplication::internalNotify ()
   from /opt/qt3//lib/libqt-mt.so.3
#14 0x409cf297 in QApplication::notify () from /opt/qt3//lib/libqt-mt.so.3
#15 0x4066c4c9 in KApplication::notify () from /opt/kde3//lib/libkdecore.so.4
#16 0x4097c320 in qt_activate_timers () from /opt/qt3//lib/libqt-mt.so.3
#17 0x40979eac in QApplication::processNextEvent ()
   from /opt/qt3//lib/libqt-mt.so.3
#18 0x409d07e1 in QApplication::enter_loop () from /opt/qt3//lib/libqt-mt.so.3
#19 0x40b71bfc in QDialog::exec () from /opt/qt3//lib/libqt-mt.so.3
#20 0x4050e117 in createKMessageBox () from /opt/kde3//lib/libkdeui.so.4
#21 0x40510a67 in KMessageBox::error () from /opt/kde3//lib/libkdeui.so.4
#22 0x40297096 in KDirLister::validURL () from /opt/kde3//lib/libkio.so.4
#23 0x40294fab in KDirLister::openURL () from /opt/kde3//lib/libkio.so.4
#24 0x415339d5 in KonqBaseListViewWidget::openURL ()
   from /opt/kde3//lib/kde3/konq_listview.so
#25 0x41527129 in KonqListView::doOpenURL ()
   from /opt/kde3//lib/kde3/konq_listview.so
#26 0x412185d6 in KonqDirPart::openURL () from /opt/kde3//lib/libkonq.so.4
#27 0x400724c8 in KParts::BrowserExtension::restoreState ()
   from /opt/kde3//lib/libkparts.so.2
#28 0x4153d353 in ListViewBrowserExtension::restoreState ()
   from /opt/kde3//lib/kde3/konq_listview.so
#29 0x412b1f8e in KonqView::go () from /opt/kde3//lib/konqueror.so
#30 0x41292a28 in KonqMainWindow::slotGoHistoryDelayed ()
   from /opt/kde3//lib/konqueror.so
#31 0x412a7e8d in KonqMainWindow::qt_invoke () from /opt/kde3//lib/konqueror.so
#32 0x40a26b24 in QObject::activate_signal () from /opt/qt3//lib/libqt-mt.so.3
#33 0x40ce281d in QSignal::signal () from /opt/qt3//lib/libqt-mt.so.3
#34 0x40a3bae7 in QSignal::activate () from /opt/qt3//lib/libqt-mt.so.3
#35 0x40a412bf in QSingleShotTimer::event () from /opt/qt3//lib/libqt-mt.so.3
#36 0x409cf3f1 in QApplication::internalNotify ()
   from /opt/qt3//lib/libqt-mt.so.3
#37 0x409cf297 in QApplication::notify () from /opt/qt3//lib/libqt-mt.so.3
#38 0x4066c4c9 in KApplication::notify () from /opt/kde3//lib/libkdecore.so.4
#39 0x4097c320 in qt_activate_timers () from /opt/qt3//lib/libqt-mt.so.3
#40 0x40979eac in QApplication::processNextEvent ()
   from /opt/qt3//lib/libqt-mt.so.3
#41 0x409d07e1 in QApplication::enter_loop () from /opt/qt3//lib/libqt-mt.so.3
#42 0x40979618 in QApplication::exec () from /opt/qt3//lib/libqt-mt.so.3
#43 0x41279d3e in main () from /opt/kde3//lib/konqueror.so
#44 0x0804cce5 in launch ()
#45 0x0804da08 in handle_launcher_request ()
#46 0x0804dee2 in handle_requests ()
#47 0x0804f3db in main ()
#48 0x41032280 in __libc_start_main () from /lib/libc.so.6

(Submitted via bugs.kde.org)
Comment 1 Tomaz Solc 2002-08-16 11:01:42 UTC
--=.iBfA44cbTpKn5A
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit

Package: konqueror kfind
Version: KDE_3_0_2_RELEASE
OS: Linux 2.4.18

Hi

After a sleepless night I have patch for this bug :) It seems that "emit finished()" causes the crashes. What connects to this signal? I couldn't find anything significant. Backtrace shows that it causes openUrl to be called with some strange parameters. As far as I know commenting it out causes no side effects.

Change in libkonq also fixes strange behavior when find tool gets closed if back button is pushed.

Best regards
Tomaz Solc

Index: kfind/kfindpart.cpp
===================================================================
RCS file: /home/kde/kdebase/kfind/kfindpart.cppv
retrieving revision 1.4
diff -u -3 -p -r1.4 kfindpart.cpp
--- kfind/kfindpart.cpp25 Feb 2002 12:16:32 -00001.4
+++ kfind/kfindpart.cpp16 Aug 2002 10:18:31 -0000
@@ -1677 +1679 @@ void KFindPart::restoreKFindState( QData
     *stream >> itemUrl;
     addFile(new KFileItem(itemUrl""0)"");
   }
-    emit finished();
+    // why does this make konqueror crash?
+    //emit finished();
+    kdDebug(1202) << "KFindPart::restoreKFindState : would emit finished\n";
 }
 
 KFindPartBrowserExtension::KFindPartBrowserExtension( KFindPart *findPart )
Index: libkonq/konq_dirpart.cc
===================================================================
RCS file: /home/kde/kdebase/libkonq/konq_dirpart.ccv
retrieving revision 1.54
diff -u -3 -p -r1.54 konq_dirpart.cc
--- libkonq/konq_dirpart.cc25 Feb 2002 06:38:55 -00001.54
+++ libkonq/konq_dirpart.cc16 Aug 2002 10:18:33 -0000
@@ -2506 +25013 @@ void KonqDirPart::restoreNameFilter( QDa
 
 void KonqDirPart::restoreState( QDataStream &stream )
 {
+    if ( m_findPart )
+    {
+        delete m_findPart;
+        m_findPart = 0L;
+        emit findClosed( this );
+    }
+
     // Warning: see comment in IconViewBrowserExtension::restoreState about order
     //kdDebug(1203) << " -- void KonqDirPart::restoreState( QDataStream &stream )" << endl;
     bool bFindPart;
@@ -46014 +46716 @@ bool KonqDirPart::closeURL()
 
 bool KonqDirPart::openURL(const KURL& url)
 {
-    if ( m_findPart )
-    {
-        kdDebug(1203) << "KonqDirPart::openURL -> emit findClosed " << this << endl;
-        delete m_findPart;
-        m_findPart = 0L;
-        emit findClosed( this );
-    }
-    
+//    if ( m_findPart )
+//    {
+//        kdDebug(1203) << "KonqDirPart::openURL -> emit findClosed " << this << endl;
+//kdDebug(1203) << "KonqDirPart::openURL url: " << url.path() << endl;
+//        delete m_findPart;
+//        m_findPart = 0L;
+//        emit findClosed( this );
+//    }
+// moved to restore state
+
     m_url = url;
     emit aboutToOpenURL ();
 

--=.iBfA44cbTpKn5A
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)

iD8DBQE9XNucsAlAlRhL9q8RAowNAKDL/tDgd973O4yMzHBjapoCAgepUwCgrEiQ
SXcwqeD1EkYWsdCOVtqQ5xU=
=nADD
-----END PGP SIGNATURE-----

--=.iBfA44cbTpKn5A--
Comment 2 Stephan Kulow 2002-09-19 22:18:51 UTC
*** Bug 42337 has been marked as a duplicate of this bug. ***
Comment 3 John Firebaugh 2002-09-29 22:14:05 UTC

*** This bug has been marked as a duplicate of 47503 ***
Comment 4 Jeff 2003-10-09 22:11:04 UTC
this bug is still not fixed, i downloaded the latest version of konqueror just
now, and it still does this.

Jeff