Bug 308139

Summary: Kate crash while typing a backslash
Product: [Applications] kate Reporter: Michael Witrant <mike>
Component: generalAssignee: KWrite Developers <kwrite-bugs-null>
Status: RESOLVED DUPLICATE    
Severity: crash CC: mike
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: New crash information added by DrKonqi
swap file that crashes kate when I click "recover"

Description Michael Witrant 2012-10-09 16:21:34 UTC
Application: kate (3.8.5)
KDE Platform Version: 4.8.5 (4.8.5)
Qt Version: 4.8.1
Operating System: Linux 3.2.0-31-generic-pae i686
Distribution: Ubuntu 12.04.1 LTS

-- Information about the crash:
- What I was doing when the application crashed:
I just typed "\" while editing a Ruby or HAML file (I can't remember)

- Custom settings of the application:
I use these highlights : https://github.com/ouvrages/haml_kate

-- Backtrace:
Application: Kate (kate), signal: Segmentation fault
Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0xb4d94980 (LWP 5481))]

Thread 5 (Thread 0xb2c7ab40 (LWP 5484)):
#0  0xb5f27c64 in __pthread_mutex_unlock_usercnt () from /lib/i386-linux-gnu/libpthread.so.0
#1  0xb770cab4 in pthread_mutex_unlock () from /lib/i386-linux-gnu/libc.so.6
#2  0xb5e91410 in g_mutex_unlock () from /lib/i386-linux-gnu/libglib-2.0.so.0
#3  0xb5e51f50 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#4  0xb5e5256b in g_main_loop_run () from /lib/i386-linux-gnu/libglib-2.0.so.0
#5  0xb2c7f134 in ?? () from /usr/lib/i386-linux-gnu/gio/modules/libdconfsettings.so
#6  0xb5e756b3 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#7  0xb5f24d4c in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#8  0xb76fef4e in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 4 (Thread 0xb22ffb40 (LWP 5485)):
#0  0xb77de424 in __kernel_vsyscall ()
#1  0xb76ee5fb in read () from /lib/i386-linux-gnu/libc.so.6
#2  0xb5e906ae in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#3  0xb5e51bd2 in g_main_context_check () from /lib/i386-linux-gnu/libglib-2.0.so.0
#4  0xb5e52042 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#5  0xb5e5256b in g_main_loop_run () from /lib/i386-linux-gnu/libglib-2.0.so.0
#6  0xb35691ba in ?? () from /usr/lib/i386-linux-gnu/libgio-2.0.so.0
#7  0xb5e756b3 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#8  0xb5f24d4c in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#9  0xb76fef4e in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 3 (Thread 0xb18ffb40 (LWP 5505)):
#0  0xb5e910e7 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#1  0xb5e913c8 in g_mutex_lock () from /lib/i386-linux-gnu/libglib-2.0.so.0
#2  0xb5e5187c in g_main_context_prepare () from /lib/i386-linux-gnu/libglib-2.0.so.0
#3  0xb5e51faf in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#4  0xb5e52201 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#5  0xb62018e7 in QEventDispatcherGlib::processEvents (this=0xb0f00468, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#6  0xb61cd50d in QEventLoop::processEvents (this=0xb18ff240, flags=...) at kernel/qeventloop.cpp:149
#7  0xb61cd7a9 in QEventLoop::exec (this=0xb18ff240, flags=...) at kernel/qeventloop.cpp:204
#8  0xb60b694c in QThread::exec (this=0xa1da3f8) at thread/qthread.cpp:501
#9  0xb61aab5d in QInotifyFileSystemWatcherEngine::run (this=0xa1da3f8) at io/qfilesystemwatcher_inotify.cpp:248
#10 0xb60b9de0 in QThreadPrivate::start (arg=0xa1da3f8) at thread/qthread_unix.cpp:298
#11 0xb5f24d4c in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#12 0xb76fef4e in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 2 (Thread 0xaf0e3b40 (LWP 5506)):
#0  0xb77de424 in __kernel_vsyscall ()
#1  0xb5f2896b in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i386-linux-gnu/libpthread.so.0
#2  0xb770c85c in pthread_cond_wait () from /lib/i386-linux-gnu/libc.so.6
#3  0xaf572029 in ?? () from /usr/lib/i386-linux-gnu/libQtScript.so.4
#4  0xaf57206f in ?? () from /usr/lib/i386-linux-gnu/libQtScript.so.4
#5  0xb5f24d4c in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#6  0xb76fef4e in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 1 (Thread 0xb4d94980 (LWP 5481)):
[KCrash Handler]
#7  hasMatch (this=0xb470048) at ../../part/syntax/katecodefolding.h:228
#8  matchingNode (this=0xb470048) at ../../part/syntax/katecodefolding.h:231
#9  getStartMatching (endNode=0xaa249a8, this=0xb470048) at ../../part/syntax/katecodefolding.cpp:155
#10 KateCodeFoldingTree::getLineInfo (this=0xa747fb0, info=0xbfba4b00, line=123) at ../../part/syntax/katecodefolding.cpp:1020
#11 0xaf778086 in lineInfo (line=123, info=0xbfba4b00, this=<optimized out>) at ../../part/document/katebuffer.h:187
#12 KateDocument::lineInfo (this=0xa5de750, info=0xbfba4b00, line=123) at ../../part/document/katedocument.cpp:4041
#13 0xaf83c485 in KateIconBorder::paintBorder (this=0xa94aa28, y=0, height=821) at ../../part/view/kateviewhelpers.cpp:1197
#14 0xaf83dfea in KateIconBorder::paintEvent (this=0xa94aa28, e=0xbfba5104) at ../../part/view/kateviewhelpers.cpp:955
#15 0xb6cd1152 in QWidget::event (this=0xa94aa28, event=0xbfba5104) at kernel/qwidget.cpp:8508
#16 0xb6c76ed4 in notify_helper (e=0xbfba5104, receiver=0xa94aa28, this=0x99a1000) at kernel/qapplication.cpp:4559
#17 QApplicationPrivate::notify_helper (this=0x99a1000, receiver=0xa94aa28, e=0xbfba5104) at kernel/qapplication.cpp:4531
#18 0xb6c7c3a2 in QApplication::notify (this=0x99a1000, receiver=0xa94aa28, e=0xbfba5104) at kernel/qapplication.cpp:4524
#19 0xb659ce01 in KApplication::notify (this=0xbfba7e50, receiver=0xa94aa28, event=0xbfba5104) at ../../kdeui/kernel/kapplication.cpp:311
#20 0xb61ce97e in QCoreApplication::notifyInternal (this=0xbfba7e50, receiver=0xa94aa28, event=0xbfba5104) at kernel/qcoreapplication.cpp:876
#21 0xb6cccada in sendSpontaneousEvent (event=<optimized out>, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:234
#22 QWidgetPrivate::drawWidget (this=0xa73b9d8, pdev=0xa39db28, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0xa17ffe0) at kernel/qwidget.cpp:5585
#23 0xb6ccd882 in QWidgetPrivate::paintSiblingsRecursive (this=0xa5e4358, pdev=0xa39db28, siblings=..., index=<optimized out>, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0xa17ffe0) at kernel/qwidget.cpp:5794
#24 0xb6ccc838 in QWidgetPrivate::drawWidget (this=0xa5e4358, pdev=0xa39db28, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0xa17ffe0) at kernel/qwidget.cpp:5638
#25 0xb6ccd882 in QWidgetPrivate::paintSiblingsRecursive (this=0xa81ac90, pdev=0xa39db28, siblings=..., index=<optimized out>, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0xa17ffe0) at kernel/qwidget.cpp:5794
#26 0xb6ccc838 in QWidgetPrivate::drawWidget (this=0xa81ac90, pdev=0xa39db28, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0xa17ffe0) at kernel/qwidget.cpp:5638
#27 0xb6ccd882 in QWidgetPrivate::paintSiblingsRecursive (this=0xa17c8b0, pdev=0xa39db28, siblings=..., index=<optimized out>, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0xa17ffe0) at kernel/qwidget.cpp:5794
#28 0xb6ccc838 in QWidgetPrivate::drawWidget (this=0xa17c8b0, pdev=0xa39db28, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0xa17ffe0) at kernel/qwidget.cpp:5638
#29 0xb6ccd882 in QWidgetPrivate::paintSiblingsRecursive (this=0xa17c620, pdev=0xa39db28, siblings=..., index=<optimized out>, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0xa17ffe0) at kernel/qwidget.cpp:5794
#30 0xb6ccd5ba in QWidgetPrivate::paintSiblingsRecursive (this=0xa17c620, pdev=0xa39db28, siblings=..., index=1, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0xa17ffe0) at kernel/qwidget.cpp:5781
#31 0xb6ccc838 in QWidgetPrivate::drawWidget (this=0xa17c620, pdev=0xa39db28, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0xa17ffe0) at kernel/qwidget.cpp:5638
#32 0xb6ccd882 in QWidgetPrivate::paintSiblingsRecursive (this=0xa181998, pdev=0xa39db28, siblings=..., index=<optimized out>, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0xa17ffe0) at kernel/qwidget.cpp:5794
#33 0xb6ccc838 in QWidgetPrivate::drawWidget (this=0xa181998, pdev=0xa39db28, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0xa17ffe0) at kernel/qwidget.cpp:5638
#34 0xb6ccd882 in QWidgetPrivate::paintSiblingsRecursive (this=0xa18f420, pdev=0xa39db28, siblings=..., index=<optimized out>, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0xa17ffe0) at kernel/qwidget.cpp:5794
#35 0xb6ccc838 in QWidgetPrivate::drawWidget (this=0xa18f420, pdev=0xa39db28, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0xa17ffe0) at kernel/qwidget.cpp:5638
#36 0xb6ccd882 in QWidgetPrivate::paintSiblingsRecursive (this=0xa185178, pdev=0xa39db28, siblings=..., index=<optimized out>, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0xa17ffe0) at kernel/qwidget.cpp:5794
#37 0xb6ccc838 in QWidgetPrivate::drawWidget (this=0xa185178, pdev=0xa39db28, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0xa17ffe0) at kernel/qwidget.cpp:5638
#38 0xb6ccd882 in QWidgetPrivate::paintSiblingsRecursive (this=0x9f34978, pdev=0xa39db28, siblings=..., index=<optimized out>, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0xa17ffe0) at kernel/qwidget.cpp:5794
#39 0xb6ccc838 in QWidgetPrivate::drawWidget (this=0x9f34978, pdev=0xa39db28, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0xa17ffe0) at kernel/qwidget.cpp:5638
#40 0xb6ccd882 in QWidgetPrivate::paintSiblingsRecursive (this=0xa195758, pdev=0xa39db28, siblings=..., index=<optimized out>, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0xa17ffe0) at kernel/qwidget.cpp:5794
#41 0xb6ccc838 in QWidgetPrivate::drawWidget (this=0xa195758, pdev=0xa39db28, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0xa17ffe0) at kernel/qwidget.cpp:5638
#42 0xb6ccd882 in QWidgetPrivate::paintSiblingsRecursive (this=0xa178fd8, pdev=0xa39db28, siblings=..., index=<optimized out>, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0xa17ffe0) at kernel/qwidget.cpp:5794
#43 0xb6ccc838 in QWidgetPrivate::drawWidget (this=0xa178fd8, pdev=0xa39db28, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0xa17ffe0) at kernel/qwidget.cpp:5638
#44 0xb6ccd882 in QWidgetPrivate::paintSiblingsRecursive (this=0x9f75db8, pdev=0xa39db28, siblings=..., index=<optimized out>, rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0xa17ffe0) at kernel/qwidget.cpp:5794
#45 0xb6ccc838 in QWidgetPrivate::drawWidget (this=0x9f75db8, pdev=0xa39db28, rgn=..., offset=..., flags=5, sharedPainter=0x0, backingStore=0xa17ffe0) at kernel/qwidget.cpp:5638
#46 0xb6ec5dc0 in QWidgetBackingStore::sync (this=0xa17ffe0) at painting/qbackingstore.cpp:1373
#47 0xb6cc29db in QWidgetPrivate::syncBackingStore (this=0x9f75db8) at kernel/qwidget.cpp:1891
#48 0xb6cd1ae7 in QWidget::event (this=0x9f35a10, event=0xacfde30) at kernel/qwidget.cpp:8655
#49 0xb710c2dc in QMainWindow::event (this=0x9f35a10, event=0xacfde30) at widgets/qmainwindow.cpp:1478
#50 0xb6678754 in KMainWindow::event (this=0x9f35a10, ev=0xacfde30) at ../../kdeui/widgets/kmainwindow.cpp:1084
#51 0xb66c1d82 in KXmlGuiWindow::event (this=0x9f35a10, ev=0xacfde30) at ../../kdeui/xmlgui/kxmlguiwindow.cpp:126
#52 0xb6c76ed4 in notify_helper (e=0xacfde30, receiver=0x9f35a10, this=0x99a1000) at kernel/qapplication.cpp:4559
#53 QApplicationPrivate::notify_helper (this=0x99a1000, receiver=0x9f35a10, e=0xacfde30) at kernel/qapplication.cpp:4531
#54 0xb6c7c3a2 in QApplication::notify (this=0x99a1000, receiver=0x9f35a10, e=0xacfde30) at kernel/qapplication.cpp:4524
#55 0xb659ce01 in KApplication::notify (this=0xbfba7e50, receiver=0x9f35a10, event=0xacfde30) at ../../kdeui/kernel/kapplication.cpp:311
#56 0xb61ce97e in QCoreApplication::notifyInternal (this=0xbfba7e50, receiver=0x9f35a10, event=0xacfde30) at kernel/qcoreapplication.cpp:876
#57 0xb61d2ad8 in sendEvent (event=<optimized out>, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
#58 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x9975370) at kernel/qcoreapplication.cpp:1500
#59 0xb61d2e0c in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1393
#60 0xb6201494 in sendPostedEvents () at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:236
#61 postEventSourceDispatch (s=0x9998168) at kernel/qeventdispatcher_glib.cpp:279
#62 0xb5e51d86 in g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0
#63 0xb5e52125 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#64 0xb5e52201 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#65 0xb6201887 in QEventDispatcherGlib::processEvents (this=0x9975ed8, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#66 0xb6d2faaa in QGuiEventDispatcherGlib::processEvents (this=0x9975ed8, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#67 0xb61cd50d in QEventLoop::processEvents (this=0xbfba7d84, flags=...) at kernel/qeventloop.cpp:149
#68 0xb61cd7a9 in QEventLoop::exec (this=0xbfba7d84, flags=...) at kernel/qeventloop.cpp:204
#69 0xb61d2eba in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1148
#70 0xb6c74a74 in QApplication::exec () at kernel/qapplication.cpp:3820
#71 0xb77d5905 in kdemain (argc=2, argv=0xbfba84b4) at ../../../kate/app/katemain.cpp:377
#72 0x080484fb in main (argc=2, argv=0xbfba84b4) at kate_dummy.cpp:3

Possible duplicates by query: bug 306369, bug 297317, bug 297261, bug 294241, bug 293934.

Reported using DrKonqi
Comment 1 Dominik Haumann 2012-10-24 23:20:46 UTC
known issue, do you have a way to reproduce?

*** This bug has been marked as a duplicate of bug 306369 ***
Comment 2 Michael Witrant 2012-11-08 10:18:15 UTC
Created attachment 75099 [details]
New crash information added by DrKonqi

kate (3.8.5) on KDE Platform 4.8.5 (4.8.5) using Qt 4.8.1

- What I was doing when the application crashed:
On the first crash, I was closing a bracket in a HAML file.
Now it crashes everytime I access the file again and click "Recover".

I copied the swap file and my .kde directory to a safe place.

- Custom settings of the application:
HAML highlighting from https://github.com/ouvrages/haml_kate

-- Backtrace (Reduced):
#7  hasMatch (this=0x9586bb0) at ../../part/syntax/katecodefolding.h:228
#8  matchingNode (this=0x9586bb0) at ../../part/syntax/katecodefolding.h:231
#9  getStartMatching (endNode=0x95ba340, this=0x9586bb0) at ../../part/syntax/katecodefolding.cpp:155
#10 KateCodeFoldingTree::getLineInfo (this=0x904db98, info=0xbf9cd8f0, line=8) at ../../part/syntax/katecodefolding.cpp:1020
#11 0xafae3086 in lineInfo (line=8, info=0xbf9cd8f0, this=<optimized out>) at ../../part/document/katebuffer.h:187
Comment 3 Michael Witrant 2012-11-08 10:21:27 UTC
Created attachment 75100 [details]
swap file that crashes kate when I click "recover"
Comment 4 Dominik Haumann 2012-11-08 11:18:31 UTC
Can you please follow http://www.kate-editor.org/get-it/ and check, whether you can still reproduce?
Comment 5 Michael Witrant 2012-11-14 15:16:48 UTC
I installed Kate from git and copied the old swap file, but Kate doesn't ask for recover and deletes the swap file.
Comment 6 Dominik Haumann 2013-03-23 15:29:14 UTC

*** This bug has been marked as a duplicate of bug 294241 ***