Version: (using KDE Devel) Installed from: Compiled sources OS: Linux konsole(21910)/kdeui (KXmlGui) KXMLGUIFactory::removeClient: KXMLGUIFactory::removeServant, calling removeRecursive konsole(21910)/kdeui (KXmlGui) KXMLGUIFactory::addClient: KXMLGUIFactory::addClient( 0x49cfc88 ) konsole(21910)/kdeui (KXmlGui) KXMLGUIFactory::removeClient: KXMLGUIFactory::removeClient( 0x49cfc88 ) konsole(21910)/kdeui (KXmlGui) KXMLGUIFactory::removeClient: KXMLGUIFactory::removeServant, calling removeRecursive konsole(21910)/kdeui (KXmlGui) KXMLGUIFactory::addClient: KXMLGUIFactory::addClient( 0x4918a28 ) konsole(21910) Konsole::SSHProcessInfo::SSHProcessInfo: [username] and host: "ora-1" konsole(21910) Konsole::SSHProcessInfo::SSHProcessInfo: found only host: "ora-1" konsole(21910)/kdeui (KXmlGui) KXMLGUIFactory::removeClient: KXMLGUIFactory::removeClient( 0x57ed918 ) konsole(21910)/kdeui (KXmlGui) KXMLGUIFactory::addClient: KXMLGUIFactory::addClient( 0x57ed918 ) konsole(21910)/kdeui (KXmlGui) KXMLGUIFactory::addClient: KXMLGUIFactory::addClient( 0x6dedb28 ) konsole(21910)/kdeui (KNotification) KNotification::slotReceivedId: 2069 konsole(21910)/kdeui (KNotification) KNotificationManager::notificationClosed: 2069 konsole(21910)/kdeui (KNotification) KNotification::~KNotification: 2069 ASSERT: "endLine >= startLine && endLine < hist->getLines() + lines" in file /tmp/rmake/builds/kdebase4/kdebase4--kdebase/apps/konsole/src/Screen.cpp, line 602 konsole(21910) Konsole::SessionManager::setDefaultProfile: setting default session type to "Shell.profile" Program exited with code 01.
Hello Pavel, Thanks for the report. I have a few additional questions which should help in resolving this problem. 1. What were you doing in Konsole when the crash occurred? 2. Were you using the split-view feature at the time? 3. What is the size of your display in lines and columns ( run 'echo $LINES' and 'echo $COLUMNS' to find out )?
1. afair i was just looking on build output, or maybe i scroll history back with mouse wheel 2. no 3. my default settings 31 lines and 149 columns, i'm not sure if i resized that console or not, sorry. maybe it was maximized (37 and 158)
I haven't been able to reproduce this yet, but I spotted a potential race condition which is possibly related. In Konsole::ScreenWindow::getLineProperties(), is is possible for '_currentLine' to be greater than 'endWindowLine()' in the time between the number of lines in the terminal screen changing (due to the window being resized or the scrollback settings being changed) and the timer which causes the view to be updated expiring.
Just ran into this myself. I wasn't able to get a complete backtrace. #6 0xffffe410 in __kernel_vsyscall () #7 0xb636f875 in raise () from /lib/tls/i686/cmov/libc.so.6 #8 0xb6371201 in abort () from /lib/tls/i686/cmov/libc.so.6 #9 0xb6db8f9d in qt_message_output (msgType=QtFatalMsg, buf=0xbf80f970 "ASSERT: \"endLine >= startLine && endLine < hist->getLines() + lines\" in file /media/usbdisk/robert/kde4/src/kdebase/apps/konsole/src/Screen.cpp, line 602") at global/qglobal.cpp:2160 #10 0xb6db9021 in qFatal (msg=0xb6eb0010 "ASSERT: \"%s\" in file %s, line %d") at global/qglobal.cpp:2392 #11 0xb6db918d in qt_assert ( assertion=0xb7f5e234 "endLine >= startLine && endLine < hist->getLines() + lines", file=0xb7f5e16c "/media/usbdisk/robert/kde4/src/kdebase/apps/konsole/src/Screen.cpp", line=602) at global/qglobal.cpp:1917 #12 0xb7f170fc in Konsole::Screen::initTabStops (this=0xbf811a54) at /media/usbdisk/robert/kde4/src/kdebase/apps/konsole/src/Screen.cpp:717 #13 0xb7f198a2 in Konsole::ScreenWindow::selectedText (this=0x24, preserveLineBreaks=180) at /media/usbdisk/robert/kde4/src/kdebase/apps/konsole/src/ScreenWindow.cpp:118 #14 0x085b6260 in ?? () #15 0x000003e8 in ?? () #16 0x00000024 in ?? () #17 0xb6efe3b4 in QLinkedListData::shared_null () from /media/usbdisk/robert/kde4/build/qt/lib/libQtCore.so.4 #18 0x00000000 in ?? () #0 0xffffe410 in __kernel_vsyscall ()
Should have been fixed by refactoring the affected class so prevent the race condition described earlier. I will re-open if it happens again.