Bug 106464 - konsole crashes while detaching/closing certain tabs
Summary: konsole crashes while detaching/closing certain tabs
Status: RESOLVED FIXED
Alias: None
Product: konsole
Classification: Applications
Component: general (show other bugs)
Version: 1.5
Platform: unspecified Linux
: NOR normal
Target Milestone: ---
Assignee: Konsole Developer
URL:
Keywords:
: 111423 (view as bug list)
Depends on:
Blocks:
 
Reported: 2005-05-29 17:04 UTC by Johannes Schaub
Modified: 2006-01-01 01:16 UTC (History)
0 users

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 Johannes Schaub 2005-05-29 17:04:29 UTC
Version:           1.5 (using KDE 3.4.0, compiled sources)
Compiler:          gcc version 3.4.3
OS:                Linux (i686) release 2.6.11.7

Reproduce it: 
if i create two tabs in konsole and detach the first tab and close the second tab(-window) -> konsole crashes destroying the first tab(-window) and catches a segfault.

Backtrace:

Using host libthread_db library "/lib/tls/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread 1096812576 (LWP 15324)]
[KCrash handler]
#7  0x41815c1e in Konsole::activateSession ()
   from /opt/kde3/lib/libkdeinit_konsole.so
#8  0x418172ff in Konsole::doneSession ()
   from /opt/kde3/lib/libkdeinit_konsole.so
#9  0x418249f1 in Konsole::qt_invoke ()
   from /opt/kde3/lib/libkdeinit_konsole.so
#10 0x40c44154 in QObject::activate_signal ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#11 0x4182d600 in TESession::done () from /opt/kde3/lib/libkdeinit_konsole.so
#12 0x4182d677 in TESession::done () from /opt/kde3/lib/libkdeinit_konsole.so
#13 0x4182f132 in TESession::qt_invoke ()
   from /opt/kde3/lib/libkdeinit_konsole.so
#14 0x40c44154 in QObject::activate_signal ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#15 0x40c4477b in QObject::activate_signal ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#16 0x417fde30 in TEPty::done () from /opt/kde3/lib/libkdeinit_konsole.so
#17 0x417fde6e in TEPty::donePty () from /opt/kde3/lib/libkdeinit_konsole.so
#18 0x417feca6 in TEPty::qt_invoke () from /opt/kde3/lib/libkdeinit_konsole.so
#19 0x40c44154 in QObject::activate_signal ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#20 0x407a6dcd in KProcess::processExited ()
   from /opt/kde3/lib/libkdecore.so.4
#21 0x407a6e4c in KProcess::processHasExited ()
   from /opt/kde3/lib/libkdecore.so.4
#22 0x407aa67c in KProcessController::slotDoHousekeeping ()
   from /opt/kde3/lib/libkdecore.so.4
#23 0x00000001 in ?? ()
#24 0x00000001 in ?? ()
#25 0x000ec99c in ?? ()
#26 0x081ab110 in ?? ()
#27 0x08192128 in ?? ()
#28 0xbfffe538 in ?? ()
#29 0x00000001 in ?? ()
#30 0xbfffee80 in ?? ()
#31 0x081db740 in ?? ()
#32 0xbfffe6c0 in ?? ()
#33 0x410ec99c in ?? () from /usr/lib/qt3/lib/libqt-mt.so.3
#34 0x081db740 in ?? ()
#35 0x00000013 in ?? ()
#36 0xbfffe558 in ?? ()
#37 0x40be054c in QApplication::notify () from /usr/lib/qt3/lib/libqt-mt.so.3
Comment 1 Kurt Hindenburg 2005-08-29 00:29:53 UTC
*** Bug 111423 has been marked as a duplicate of this bug. ***
Comment 2 Kurt Hindenburg 2005-08-29 00:35:12 UTC
I just re-tested this using KDE 3.4.2 and KDE 3.5.  I still can't reproduce this crash... the only difference I see is that I'm using gcc 3.3.5

Comment 3 Kurt Hindenburg 2005-08-29 02:17:12 UTC
Note for for #111423 I don't have an ogg movie player, so I couldn't watch it.  For some reason mplayer won't play it even though I have ogg/vorbis installed.
Comment 4 Johannes Schaub 2005-09-03 15:35:03 UTC
which format do you wish?
Comment 5 Johannes Schaub 2005-09-03 15:49:51 UTC
oughh, i didn't know that i reported this bug already.

you can't play it - so i've converted the video to divx:
the quality is much lower, because i double encoded the file. But good enough to see what i mean:
http://www.johannes-schaub.de/desktop-recording.avi
tell me if you can play it- if you can't, i probably will make a GIF :)
Comment 6 Kurt Hindenburg 2005-09-03 18:09:12 UTC
Thanks for the avi file, it helped.  The crash is only when selecting 'Detach' from the tab menu; not the top View menu.
Comment 7 Kurt Hindenburg 2005-09-03 21:07:51 UTC
SVN commit 456831 by hindenburg:

Temporary fix to handle crash when closing Konsole after detaching a session.

CCBUG: 106464


 M  +12 -1     konsole.cpp  


--- branches/KDE/3.5/kdebase/konsole/konsole/konsole.cpp #456830:456831
@@ -2512,7 +2512,18 @@
   if (se != s)
      se_previous = se;
   se = s;
-  session2action.find(se)->setChecked(true);
+
+// BR 106464 temporary fix... 
+//  only 2 sessions opened, 2nd session viewable, right-click on 1st tab and 
+//  select 'Detach', close original Konsole window... crash
+//  s is not set properly on original Konsole window
+  KRadioAction *ra = session2action.find(se);
+  if (!ra) {
+    se=sessions.first();        // Get new/correct TESession
+    ra = session2action.find(se);
+  }
+  ra->setChecked(true);
+
   QTimer::singleShot(1,this,SLOT(allowPrevNext())); // hack, hack, hack
 
   tabwidget->showPage( se->widget() );
Comment 8 Kurt Hindenburg 2005-11-27 05:15:13 UTC
This fix is good enough for KDE 3.5.x.  Make sure this is fixed correctly in KDE4.
Comment 9 Johannes Schaub 2005-12-03 18:32:57 UTC
it isn't "good enough". just another crash:
video can be grabbed here:
http://rapidshare.de/files/8553191/desktop-recording.avi.html

Using host libthread_db library "/lib/tls/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread 1007573024 (LWP 25192)]
[KCrash handler]
#7  0x3c30342b in TESession::setConnect ()
   from /opt/kde3/lib/libkdeinit_konsole.so
#8  0x3c2e64ea in Konsole::activateSession ()
   from /opt/kde3/lib/libkdeinit_konsole.so
#9  0x3c2e8f8f in Konsole::doneSession ()
   from /opt/kde3/lib/libkdeinit_konsole.so
#10 0x3c2fbd7c in Konsole::qt_invoke ()
   from /opt/kde3/lib/libkdeinit_konsole.so
#11 0x3b724154 in QObject::activate_signal ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#12 0x3c3042e0 in TESession::done () from /opt/kde3/lib/libkdeinit_konsole.so
#13 0x3c3047de in TESession::done () from /opt/kde3/lib/libkdeinit_konsole.so
#14 0x3c3079ae in TESession::qt_invoke ()
   from /opt/kde3/lib/libkdeinit_konsole.so
#15 0x3b724154 in QObject::activate_signal ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#16 0x3b72477b in QObject::activate_signal ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#17 0x3c2d2420 in TEPty::done () from /opt/kde3/lib/libkdeinit_konsole.so
#18 0x3c2d245e in TEPty::donePty () from /opt/kde3/lib/libkdeinit_konsole.so
#19 0x3c2d3356 in TEPty::qt_invoke () from /opt/kde3/lib/libkdeinit_konsole.so
#20 0x3b724154 in QObject::activate_signal ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#21 0x3b2749cd in KProcess::processExited ()
   from /opt/kde3/lib/libkdecore.so.4
#22 0x3b274a4c in KProcess::processHasExited ()
   from /opt/kde3/lib/libkdecore.so.4
#23 0x3b27827c in KProcessController::slotDoHousekeeping ()
   from /opt/kde3/lib/libkdecore.so.4
#24 0x00000001 in ?? ()
#25 0x00000001 in ?? ()
#26 0x00bcc99c in ?? ()
#27 0x081bf330 in ?? ()
#28 0x08190a80 in ?? ()
#29 0xafa55698 in ?? ()
#30 0x00000001 in ?? ()
#31 0xafa56040 in ?? ()
#32 0x081dd6c8 in ?? ()
#33 0xafa55820 in ?? ()
#34 0x3bbcc99c in ?? () from /usr/lib/qt3/lib/libqt-mt.so.3
#35 0x081dd6c8 in ?? ()
#36 0x00000013 in ?? ()
#37 0xafa556b8 in ?? ()
#38 0x3b6c054c in QApplication::notify () from /usr/lib/qt3/lib/libqt-mt.so.3
Comment 10 Kurt Hindenburg 2005-12-03 19:16:14 UTC
crap, I thought I had fixed this.... I'll look at it again.

Next time you make a video, put Help->About in it, so I know the version you are using...
Comment 11 Johannes Schaub 2005-12-03 20:51:39 UTC
oups... i'm using version 1.6
Comment 12 Kurt Hindenburg 2006-01-01 01:10:58 UTC
This was fixed a while ago... 

Revision 485306  - (view) (download) (as text) - [select for diffs]
Modified Sat Dec 3 18:46:38 2005 UTC (4 weeks ago) by hindenburg
File length: 134888 byte(s)
Diff to previous 480103

Again, fix crashes while detaching/closing certain tabs.

BUG: 106464 
Comment 13 Johannes Schaub 2006-01-01 01:16:32 UTC
good, i will build SVN kde3.5 to see if it's clean now :)