Bug 295938

Summary: Kate crah when pasting some text
Product: [Applications] kate Reporter: Samuele Kaplun <Samuele.Kaplun>
Component: generalAssignee: KWrite Developers <kwrite-bugs-null>
Status: RESOLVED DUPLICATE    
Severity: crash    
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Samuele Kaplun 2012-03-13 16:13:19 UTC
Application: kate (3.7.4)
KDE Platform Version: 4.7.4 (4.7.4)
Qt Version: 4.7.4
Operating System: Linux 3.0.0-16-generic x86_64
Distribution: Ubuntu 11.10

-- Information about the crash:
- What I was doing when the application crashed:
I pasted some text (Ctrl-v) during a search, while editing a Python file.

The crash does not seem to be reproducible.

-- Backtrace:
Application: Kate (kate), signal: Segmentation fault
[Current thread is 1 (Thread 0x7fac09dc3780 (LWP 29621))]

Thread 4 (Thread 0x7fabf1355700 (LWP 29622)):
#0  __libc_enable_asynccancel () at ../nptl/sysdeps/unix/sysv/linux/x86_64/cancellation.S:66
#1  0x00007fac09718458 in __GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=<optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:85
#2  0x00007fac06871f68 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007fac06872429 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007fac0762df3e in QEventDispatcherGlib::processEvents (this=0x1800db0, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#5  0x00007fac07601cf2 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#6  0x00007fac07601ef7 in QEventLoop::exec (this=0x7fabf1354dd0, flags=...) at kernel/qeventloop.cpp:201
#7  0x00007fac0751927f in QThread::exec (this=<optimized out>) at thread/qthread.cpp:498
#8  0x00007fac075e4cbf in QInotifyFileSystemWatcherEngine::run (this=0x18002c0) at io/qfilesystemwatcher_inotify.cpp:248
#9  0x00007fac0751bd05 in QThreadPrivate::start (arg=0x18002c0) at thread/qthread_unix.cpp:331
#10 0x00007fac06d43efc in start_thread (arg=0x7fabf1355700) at pthread_create.c:304
#11 0x00007fac0972459d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#12 0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7fabf0b54700 (LWP 29623)):
#0  0x00007fac06872451 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#1  0x00007fac0762df3e in QEventDispatcherGlib::processEvents (this=0x1850060, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#2  0x00007fac07601cf2 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#3  0x00007fac07601ef7 in QEventLoop::exec (this=0x7fabf0b53dd0, flags=...) at kernel/qeventloop.cpp:201
#4  0x00007fac0751927f in QThread::exec (this=<optimized out>) at thread/qthread.cpp:498
#5  0x00007fac075e4cbf in QInotifyFileSystemWatcherEngine::run (this=0x183bcd0) at io/qfilesystemwatcher_inotify.cpp:248
#6  0x00007fac0751bd05 in QThreadPrivate::start (arg=0x183bcd0) at thread/qthread_unix.cpp:331
#7  0x00007fac06d43efc in start_thread (arg=0x7fabf0b54700) at pthread_create.c:304
#8  0x00007fac0972459d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#9  0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7fabefce3700 (LWP 29658)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007fabf9144fe2 in ?? () from /usr/lib/x86_64-linux-gnu/libQtScript.so.4
#2  0x00007fabf9145019 in ?? () from /usr/lib/x86_64-linux-gnu/libQtScript.so.4
#3  0x00007fac06d43efc in start_thread (arg=0x7fabefce3700) at pthread_create.c:304
#4  0x00007fac0972459d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7fac09dc3780 (LWP 29621)):
[KCrash Handler]
#6  0x0000000000000002 in ?? ()
#7  0x00007fabf971c209 in Kate::TextBuffer::rangesForLine (this=<optimized out>, line=347, view=0x2667040, rangesWithAttributeOnly=true) at ../../part/buffer/katetextbuffer.cpp:764
#8  0x00007fabf97af650 in KateRenderer::decorationsForLine (this=0x27cf920, textLine=..., line=347, selectionsOnly=false, completionHighlight=0x0, completionSelected=false) at ../../part/render/katerenderer.cpp:342
#9  0x00007fabf97b110f in KateRenderer::layoutLine (this=0x27cf920, lineLayout=..., maxwidth=1285, cacheLayout=<optimized out>) at ../../part/render/katerenderer.cpp:934
#10 0x00007fabf97b599d in KateLayoutCache::line (this=0x124f860, realLine=<optimized out>, virtualLine=347) at ../../part/render/katelayoutcache.cpp:295
#11 0x00007fabf97b6b2a in KateLayoutCache::updateViewCache (this=0x124f860, startPos=..., newViewLineCount=63, viewLinesScrolled=<optimized out>) at ../../part/render/katelayoutcache.cpp:266
#12 0x00007fabf980677d in KateViewInternal::tagLines (this=0x1dd0b60, start=..., end=..., realCursors=<optimized out>) at ../../part/view/kateviewinternal.cpp:1963
#13 0x00007fabf9806bec in KateViewInternal::tagLines (this=0x1dd0b60, start=318, end=<optimized out>, realLines=true) at ../../part/view/kateviewinternal.cpp:1933
#14 0x00007fabf9807664 in KateViewInternal::editEnd (this=0x1dd0b60, editTagLineStart=318, editTagLineEnd=<optimized out>, tagFrom=true) at ../../part/view/kateviewinternal.cpp:3293
#15 0x00007fabf9779279 in editEnd (this=0x121e8d0) at ../../part/document/katedocument.cpp:856
#16 KateDocument::editEnd (this=0x121e8d0) at ../../part/document/katedocument.cpp:831
#17 0x00007fabf977e0d8 in KateDocument::paste (this=0x121e8d0, view=0x2667040, mode=<optimized out>) at ../../part/document/katedocument.cpp:2878
#18 0x00007fabf97f1c85 in KateView::paste (this=0x2667040) at ../../part/view/kateview.cpp:2136
#19 0x00007fabf97fea42 in KateView::qt_metacall (this=0x2667040, _c=QMetaObject::InvokeMetaMethod, _id=16, _a=0x7fffdd1711e0) at ./kateview.moc:329
#20 0x00007fac07615eba in QMetaObject::activate (sender=0x1ded490, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fffdd1711e0) at kernel/qobject.cpp:3278
#21 0x00007fac08b56bb2 in QAction::triggered (this=<optimized out>, _t1=false) at .moc/release-shared/moc_qaction.cpp:263
#22 0x00007fac08b56d9f in QAction::activate (this=0x1ded490, event=<optimized out>) at kernel/qaction.cpp:1257
#23 0x00007fac08b56f0f in QAction::event (this=<optimized out>, e=<optimized out>) at kernel/qaction.cpp:1183
#24 0x00007fac07cfa9ea in KAction::event (this=<optimized out>, event=0x7fffdd171670) at ../../kdeui/actions/kaction.cpp:131
#25 0x00007fac08b5d474 in notify_helper (e=0x7fffdd171670, receiver=0x1ded490, this=0x79b6e0) at kernel/qapplication.cpp:4486
#26 QApplicationPrivate::notify_helper (this=0x79b6e0, receiver=0x1ded490, e=0x7fffdd171670) at kernel/qapplication.cpp:4458
#27 0x00007fac08b622e1 in QApplication::notify (this=0x7fffdd172950, receiver=0x1ded490, e=0x7fffdd171670) at kernel/qapplication.cpp:4365
#28 0x00007fac07de1466 in KApplication::notify (this=0x7fffdd172950, receiver=0x1ded490, event=0x7fffdd171670) at ../../kdeui/kernel/kapplication.cpp:311
#29 0x00007fac07602afc in QCoreApplication::notifyInternal (this=0x7fffdd172950, receiver=0x1ded490, event=0x7fffdd171670) at kernel/qcoreapplication.cpp:787
#30 0x00007fac08b8f4e9 in sendEvent (event=0x7fffdd171670, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#31 QShortcutMap::dispatchEvent (this=<optimized out>, e=0x7fffdd171a80) at kernel/qshortcutmap.cpp:879
#32 0x00007fac08b909ba in QShortcutMap::tryShortcutEvent (this=0x79b808, o=<optimized out>, e=0x7fffdd171a80) at kernel/qshortcutmap.cpp:364
#33 0x00007fac08b63b62 in QApplication::notify (this=0x7fffdd172950, receiver=0x1dd0b60, e=0x7fffdd171a80) at kernel/qapplication.cpp:3928
#34 0x00007fac07de1466 in KApplication::notify (this=0x7fffdd172950, receiver=0x1dd0b60, event=0x7fffdd171a80) at ../../kdeui/kernel/kapplication.cpp:311
#35 0x00007fac07602afc in QCoreApplication::notifyInternal (this=0x7fffdd172950, receiver=0x1dd0b60, event=0x7fffdd171a80) at kernel/qcoreapplication.cpp:787
#36 0x00007fac08c01029 in QKeyMapper::sendKeyEvent (keyWidget=0x1dd0b60, grab=<optimized out>, type=QEvent::KeyPress, code=86, modifiers=..., text=..., autorepeat=false, count=1, nativeScanCode=55, nativeVirtualKey=118, nativeModifiers=4) at kernel/qkeymapper_x11.cpp:1866
#37 0x00007fac08c0149b in QKeyMapperPrivate::translateKeyEvent (this=0x7e1030, keyWidget=0x1dd0b60, event=0x7fffdd1724c0, grab=false) at kernel/qkeymapper_x11.cpp:1836
#38 0x00007fac08bdc3d7 in QApplication::x11ProcessEvent (this=0x7fffdd172950, event=0x7fffdd1724c0) at kernel/qapplication_x11.cpp:3586
#39 0x00007fac08c054a2 in x11EventSourceDispatch (s=0x79ee80, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#40 0x00007fac06871a5d in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#41 0x00007fac06872258 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#42 0x00007fac06872429 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#43 0x00007fac0762ded6 in QEventDispatcherGlib::processEvents (this=0x769fa0, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:422
#44 0x00007fac08c0510e in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=<optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#45 0x00007fac07601cf2 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#46 0x00007fac07601ef7 in QEventLoop::exec (this=0x7fffdd172890, flags=...) at kernel/qeventloop.cpp:201
#47 0x00007fac07606789 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1064
#48 0x00007fac099e80d5 in kdemain (argc=<optimized out>, argv=<optimized out>) at ../../../kate/app/katemain.cpp:377
#49 0x00007fac0966230d in __libc_start_main (main=0x400630 <main(int, char**)>, argc=2, ubp_av=0x7fffdd173e88, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffdd173e78) at libc-start.c:226
#50 0x0000000000400661 in _start ()

This bug may be a duplicate of or related to bug 281981.

Possible duplicates by query: bug 291666, bug 290033, bug 290014, bug 286662, bug 281981.

Reported using DrKonqi
Comment 1 Dominik Haumann 2012-03-13 16:52:32 UTC
Samuele, thanks a lot for the report. Do you have a way to reproduce this crash?
Did you use search & replace? Do you have folded code in python?

You hit a corner case here we are trying to fix for a year or so, but do not have  a way to reproduce. So if you could help out here, that would be awesome.
Comment 2 Dominik Haumann 2012-03-13 16:55:33 UTC

*** This bug has been marked as a duplicate of bug 265426 ***
Comment 3 Samuele Kaplun 2012-03-13 17:04:01 UTC
In data martedì, 13 marzo 2012 16.52:32, Dominik Haumann ha scritto:
> https://bugs.kde.org/show_bug.cgi?id=295938
> 
> --- Comment #1 from Dominik Haumann <dhaumann@kde.org> ---
> Samuele, thanks a lot for the report. Do you have a way to reproduce this
> crash?
> Did you use search & replace? Do you have folded code in python?
> 
> You hit a corner case here we are trying to fix for a year or so, but do not
> have  a way to reproduce. So if you could help out here, that would be
> awesome.

Ouch!

Unfortunately I can not reproduce it.

I was editing a Python file containing diff conflicts (you know, thus 
resulting e.g. after a patch not applied correctly) and the syntax highlight 
was sometime invalid due to the presence of <<<<<<<, ========, >>>>>>> lines.

I was moving through the file while searching for the string "<<<" in order to 
jump from one conflict to the next one. And I was pasting a couple of lines of 
Python.

The code was fully unfolded.

But it happened only once.

Hope this helps.

Cheers!
	Sam