Bug 304018

Summary: crash on 2 consecutive regex replacement
Product: [Applications] kate Reporter: Dan <thewhitebug>
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 Dan 2012-07-24 17:42:22 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-23-generic x86_64
Distribution: Ubuntu 11.10

-- Information about the crash:
perform a 1st search & replace using regex
crash when performing secong serach & replace with a new regex

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

Thread 4 (Thread 0x7f6307fff700 (LWP 5485)):
#0  0x00007f631f9a8473 in __GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=<optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007f631cb01f68 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f631cb02792 in g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f6314265516 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#4  0x00007f631cb272b6 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007f631cfd3efc in start_thread (arg=0x7f6307fff700) at pthread_create.c:304
#6  0x00007f631f9b459d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7  0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7f62fb7a5700 (LWP 5500)):
#0  0x00007f631cfd71fd in __pthread_mutex_unlock_usercnt (mutex=<optimized out>, decr=<optimized out>) at pthread_mutex_unlock.c:52
#1  __pthread_mutex_unlock (mutex=0x1e65f08) at pthread_mutex_unlock.c:290
#2  0x00007f631cb013f5 in g_main_context_query () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f631cb01e6a in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f631cb02429 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007f631d8bdf3e in QEventDispatcherGlib::processEvents (this=0x1e63310, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#6  0x00007f631d891cf2 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#7  0x00007f631d891ef7 in QEventLoop::exec (this=0x7f62fb7a4dd0, flags=...) at kernel/qeventloop.cpp:201
#8  0x00007f631d7a927f in QThread::exec (this=<optimized out>) at thread/qthread.cpp:498
#9  0x00007f631d874cbf in QInotifyFileSystemWatcherEngine::run (this=0x1e6c0d0) at io/qfilesystemwatcher_inotify.cpp:248
#10 0x00007f631d7abd05 in QThreadPrivate::start (arg=0x1e6c0d0) at thread/qthread_unix.cpp:331
#11 0x00007f631cfd3efc in start_thread (arg=0x7f62fb7a5700) at pthread_create.c:304
#12 0x00007f631f9b459d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#13 0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7f62fafa4700 (LWP 5501)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f62fd4d9fe2 in ?? () from /usr/lib/x86_64-linux-gnu/libQtScript.so.4
#2  0x00007f62fd4da019 in ?? () from /usr/lib/x86_64-linux-gnu/libQtScript.so.4
#3  0x00007f631cfd3efc in start_thread (arg=0x7f62fafa4700) at pthread_create.c:304
#4  0x00007f631f9b459d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7f632005c780 (LWP 5482)):
[KCrash Handler]
#6  0x0000003d00000040 in ?? ()
#7  0x00007f62fdab1209 in Kate::TextBuffer::rangesForLine (this=<optimized out>, line=75, view=0x1a21f60, rangesWithAttributeOnly=true) at ../../part/buffer/katetextbuffer.cpp:764
#8  0x00007f62fdb44650 in KateRenderer::decorationsForLine (this=0x33372c0, textLine=..., line=75, selectionsOnly=false, completionHighlight=0x0, completionSelected=false) at ../../part/render/katerenderer.cpp:342
#9  0x00007f62fdb4610f in KateRenderer::layoutLine (this=0x33372c0, lineLayout=..., maxwidth=1482, cacheLayout=<optimized out>) at ../../part/render/katerenderer.cpp:934
#10 0x00007f62fdb4a99d in KateLayoutCache::line (this=0x1fbb490, realLine=<optimized out>, virtualLine=75) at ../../part/render/katelayoutcache.cpp:295
#11 0x00007f62fdb4bb2a in KateLayoutCache::updateViewCache (this=0x1fbb490, startPos=..., newViewLineCount=64, viewLinesScrolled=<optimized out>) at ../../part/render/katelayoutcache.cpp:266
#12 0x00007f62fdb9b77d in KateViewInternal::tagLines (this=0x2346750, start=..., end=..., realCursors=<optimized out>) at ../../part/view/kateviewinternal.cpp:1963
#13 0x00007f62fdb9bbec in KateViewInternal::tagLines (this=0x2346750, start=24, end=<optimized out>, realLines=true) at ../../part/view/kateviewinternal.cpp:1933
#14 0x00007f62fdb0ce22 in KateDocument::tagLines (this=<optimized out>, start=24, end=161) at ../../part/document/katedocument.cpp:3588
#15 0x00007f62fdb1c25a in KateDocument::qt_metacall (this=0x3314fe0, _c=QMetaObject::InvokeMetaMethod, _id=51, _a=0x7fffffc23150) at ./katedocument.moc:350
#16 0x00007f631d8a5eba in QMetaObject::activate (sender=0x2f04d70, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fffffc23150) at kernel/qobject.cpp:3278
#17 0x00007f62fdb2502f in KateBuffer::tagLines (this=<optimized out>, _t1=24, _t2=161) at ./katebuffer.moc:98
#18 0x00007f62fdb2724f in KateBuffer::doHighlight (this=<optimized out>, startLine=24, endLine=160, invalidate=true) at ../../part/document/katebuffer.cpp:708
#19 0x00007f62fdb27acf in KateBuffer::editEnd (this=0x2f04d70) at ../../part/document/katebuffer.cpp:122
#20 0x00007f62fdb0e20c in editEnd (this=0x3314fe0) at ../../part/document/katedocument.cpp:850
#21 KateDocument::editEnd (this=0x3314fe0) at ../../part/document/katedocument.cpp:831
#22 0x00007f62fdb246a9 in KateDocument::endEditing (this=<optimized out>) at ../../part/document/katedocument.h:212
#23 0x00007f62fdb56cba in KateSearchBar::findAll (this=0x31ceaf0, inputRange=..., replacement=<optimized out>) at ../../part/search/katesearchbar.cpp:831
#24 0x00007f62fdb5746a in KateSearchBar::replaceAll (this=0x31ceaf0) at ../../part/search/katesearchbar.cpp:864
#25 0x00007f62fdb5b222 in KateSearchBar::qt_metacall (this=0x31ceaf0, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fffffc23890) at ./katesearchbar.moc:121
#26 0x00007f631d8a5eba in QMetaObject::activate (sender=0x1fce8b0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fffffc23890) at kernel/qobject.cpp:3278
#27 0x00007f631f45e642 in QAbstractButton::clicked (this=<optimized out>, _t1=false) at .moc/release-shared/moc_qabstractbutton.cpp:206
#28 0x00007f631f1a41fe in QAbstractButtonPrivate::emitClicked (this=<optimized out>) at widgets/qabstractbutton.cpp:546
#29 0x00007f631f1a553b in QAbstractButtonPrivate::click (this=0x1fcea00) at widgets/qabstractbutton.cpp:539
#30 0x00007f631f1a57ac in QAbstractButton::mouseReleaseEvent (this=0x1fce8b0, e=0x7fffffc23fa0) at widgets/qabstractbutton.cpp:1121
#31 0x00007f631ee3dcea in QWidget::event (this=0x1fce8b0, event=0x7fffffc23fa0) at kernel/qwidget.cpp:8295
#32 0x00007f631eded474 in notify_helper (e=0x7fffffc23fa0, receiver=0x1fce8b0, this=0x1808290) at kernel/qapplication.cpp:4486
#33 QApplicationPrivate::notify_helper (this=0x1808290, receiver=0x1fce8b0, e=0x7fffffc23fa0) at kernel/qapplication.cpp:4458
#34 0x00007f631edf2cbb in QApplication::notify (this=<optimized out>, receiver=0x1fce8b0, e=0x7fffffc23fa0) at kernel/qapplication.cpp:4047
#35 0x00007f631e071466 in KApplication::notify (this=0x7fffffc24c50, receiver=0x1fce8b0, event=0x7fffffc23fa0) at ../../kdeui/kernel/kapplication.cpp:311
#36 0x00007f631d892afc in QCoreApplication::notifyInternal (this=0x7fffffc24c50, receiver=0x1fce8b0, event=0x7fffffc23fa0) at kernel/qcoreapplication.cpp:787
#37 0x00007f631edee442 in sendEvent (event=<optimized out>, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#38 QApplicationPrivate::sendMouseEvent (receiver=0x1fce8b0, event=0x7fffffc23fa0, alienWidget=0x1fce8b0, nativeWidget=0x31ceaf0, buttonDown=0x1fce8b0, lastMouseReceiver=..., spontaneous=true) at kernel/qapplication.cpp:3146
#39 0x00007f631ee6d9d5 in QETWidget::translateMouseEvent (this=0x31ceaf0, event=<optimized out>) at kernel/qapplication_x11.cpp:4571
#40 0x00007f631ee6c94e in QApplication::x11ProcessEvent (this=0x7fffffc24c50, event=0x7fffffc247c0) at kernel/qapplication_x11.cpp:3693
#41 0x00007f631ee954a2 in x11EventSourceDispatch (s=0x180d870, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#42 0x00007f631cb01a5d in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#43 0x00007f631cb02258 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#44 0x00007f631cb02429 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#45 0x00007f631d8bded6 in QEventDispatcherGlib::processEvents (this=0x17d8fa0, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:422
#46 0x00007f631ee9510e in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=<optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#47 0x00007f631d891cf2 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#48 0x00007f631d891ef7 in QEventLoop::exec (this=0x7fffffc24b90, flags=...) at kernel/qeventloop.cpp:201
#49 0x00007f631d896789 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1064
#50 0x00007f631fc780d5 in kdemain (argc=<optimized out>, argv=<optimized out>) at ../../../kate/app/katemain.cpp:377
#51 0x00007f631f8f230d in __libc_start_main (main=0x400630 <main(int, char**)>, argc=2, ubp_av=0x7fffffc26188, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffc26178) at libc-start.c:226
#52 0x0000000000400661 in _start ()

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

Possible duplicates by query: bug 302976, bug 301752, bug 300509, bug 295938, bug 291666.

Reported using DrKonqi
Comment 1 Jekyll Wu 2012-07-24 23:35:25 UTC

*** This bug has been marked as a duplicate of bug 265426 ***
Comment 2 Dominik Haumann 2012-08-18 17:04:24 UTC
Dan, can you provide a test case with step by step instructions how to reproduce for this?
This would help us tremendously, since this bug exists for quite some time now, but we cannot do anything about it, as long as we do not have a way how to reliably reproduce...
Comment 3 Dan 2012-08-21 17:38:48 UTC
It crashed on me several times. But I can not reliably reproduce at will.