Bug 200450

Summary: Kate crashed upon saving file on samba share (and on other situations) [KateSmartCursor::setPositionInternal, KateSmartCursor::translate, KateSmartGroup::translateChanged]
Product: [Applications] kate Reporter: nate <enatefox>
Component: generalAssignee: KWrite Developers <kwrite-bugs-null>
Status: RESOLVED FIXED    
Severity: crash CC: albbas, andresbajotierra, bruno.vasselle, drankinatty, gkalelis, jchampavere, jerome.frgacic, jguilhemsang, kde, kurt.dequick, linuxfever, luca.naso, mariomoralesrivera, martin.schwinzerl, mihaic, null, piotr.sniady, rodrigue_in, rukhin, ryan.reich, sebastian.souyris, swarnendu_cse, tim.tadh, vendion, versified.verity, will.murnane, Wolfgang_Mader, xtekhne, zubat91
Priority: VHI    
Version: unspecified   
Target Milestone: ---   
Platform: Unlisted Binaries   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: testcase with which one can reproduce the crash

Description nate 2009-07-16 15:37:06 UTC
Application that crashed: kate
Version of the application: 3.2.96
KDE Version: 4.2.96 (KDE 4.2.96 (KDE 4.3 RC2))
Qt Version: 4.5.2
Operating System: Linux 2.6.31-2-generic i686
Distribution: Ubuntu karmic (development branch)

What I was doing when the application crashed:
Kate opened with a file on a network share. Hit save and it crashed. Has happened a few times yet the files seem to be able to save. Kate is not allowed to save a temporary file (~ suffix) on the share although I checked "try to save anyways" in the warning the first time

 -- Backtrace:
Application: Kate (kdeinit4), signal: Segmentation fault
[KCrash Handler]
#6  0x04592a3a in KateSmartCursor::setPositionInternal (this=0xa4b5370, pos=..., internal=true) at ../../kate/smart/katesmartcursor.cpp:186
#7  0x04592e12 in KateSmartCursor::translate (this=0xa4b5370, edit=...) at ../../kate/smart/katesmartcursor.cpp:305
#8  0x0459827f in KateSmartGroup::translateChanged (this=0xa13d028, edit=...) at ../../kate/smart/katesmartmanager.cpp:464
#9  0x0459bb9f in KateSmartManager::slotTextChanged (this=0xa101858, edit=0xa75f748) at ../../kate/smart/katesmartmanager.cpp:368
#10 0x0459bf5f in KateSmartManager::qt_metacall (this=0xa101858, _c=QMetaObject::InvokeMetaMethod, _id=5, _a=0xbffdea88) at ./katesmartmanager.moc:74
#11 0x00caa343 in QMetaObject::activate (sender=0xa274590, from_signal_index=4, to_signal_index=4, argv=0xbffdea88) at kernel/qobject.cpp:3113
#12 0x00caafa2 in QMetaObject::activate (sender=0xa274590, m=0x46cab64, local_signal_index=0, argv=0xbffdea88) at kernel/qobject.cpp:3187
#13 0x0456a0b3 in KateEditHistory::editDone (this=0xa274590, _t1=0xa75f748) at ./kateedit.moc:78
#14 0x04554d02 in KateDocument::editWrapLine (this=0xa3c6790, line=120, col=51, newLine=true, newLineAdded=0x0) at ../../kate/document/katedocument.cpp:1281
#15 0x045568fc in KateDocument::newLine (this=0xa3c6790, v=0xa3c3118) at ../../kate/document/katedocument.cpp:3870
#16 0x045e878c in KateViewInternal::doReturn (this=0xa3bb0b0) at ../../kate/view/kateviewinternal.cpp:808
#17 0x045e8eb0 in KateViewInternal::keyPressEvent (this=0xa3bb0b0, e=0xbffdf114) at ../../kate/view/kateviewinternal.cpp:2381
#18 0x045e80a9 in KateViewInternal::eventFilter (this=0xa3bb0b0, obj=0xa3bb0b0, e=0xbffdf114) at ../../kate/view/kateviewinternal.cpp:2250
#19 0x00c9391a in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=0x9cb1498, receiver=0xa3bb0b0, event=0xbffdf114) at kernel/qcoreapplication.cpp:726
#20 0x0778bc0c in QApplicationPrivate::notify_helper (this=0x9cb1498, receiver=0xa3bb0b0, e=0xbffdf114) at kernel/qapplication.cpp:4052
#21 0x07794458 in QApplication::notify (this=0xbffe0cbc, receiver=0xa3bb0b0, e=0xbffdf114) at kernel/qapplication.cpp:3662
#22 0x011b1a4a in KApplication::notify (this=0xbffe0cbc, receiver=0xa3bb0b0, event=0xbffdf114) at ../../kdeui/kernel/kapplication.cpp:302
#23 0x00c947ab in QCoreApplication::notifyInternal (this=0xbffe0cbc, receiver=0xa3bb0b0, event=0xbffdf114) at kernel/qcoreapplication.cpp:610
#24 0x0778cb0e in QCoreApplication::sendSpontaneousEvent (receiver=0xa3bb0b0, event=0x0) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:216
#25 qt_sendSpontaneousEvent (receiver=0xa3bb0b0, event=0x0) at kernel/qapplication.cpp:4958
#26 0x07829020 in QKeyMapper::sendKeyEvent (keyWidget=0xa3bb0b0, grab=false, type=QEvent::KeyPress, code=16777220, modifiers=..., text=..., autorepeat=<value optimized out>, 
    count=<value optimized out>, nativeScanCode=36, nativeVirtualKey=65293, nativeModifiers=16) at kernel/qkeymapper_x11.cpp:1675
#27 0x0782b549 in QKeyMapperPrivate::translateKeyEvent (this=0x9cb7780, keyWidget=0xa3bb0b0, event=0xbffe08fc, grab=125) at kernel/qkeymapper_x11.cpp:1645
#28 0x077ffad7 in QApplication::x11ProcessEvent (this=0xbffe0cbc, event=0xbffe08fc) at kernel/qapplication_x11.cpp:3443
#29 0x0782d0c2 in x11EventSourceDispatch (s=0x9cb3bf8, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#30 0x00dc0bc8 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#31 0x00dc4470 in ?? () from /usr/lib/libglib-2.0.so.0
#32 0x00dc45a3 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#33 0x00cbf10c in QEventDispatcherGlib::processEvents (this=0x9cb03e8, flags=...) at kernel/qeventdispatcher_glib.cpp:327
#34 0x0782c7a5 in QGuiEventDispatcherGlib::processEvents (this=0x9cb03e8, flags=...) at kernel/qguieventdispatcher_glib.cpp:202
#35 0x00c92d59 in QEventLoop::processEvents (this=0xbffe0bf4, flags=) at kernel/qeventloop.cpp:149
#36 0x00c931aa in QEventLoop::exec (this=0xbffe0bf4, flags=...) at kernel/qeventloop.cpp:201
#37 0x00c9561f in QCoreApplication::exec () at kernel/qcoreapplication.cpp:888
#38 0x0778bab7 in QApplication::exec () at kernel/qapplication.cpp:3525
#39 0x08386acd in kdemain () from /usr/lib/libkdeinit4_kate.so
#40 0x0804dde1 in launch (argc=<value optimized out>, _name=<value optimized out>, args=<value optimized out>, cwd=0x0, envc=1, envs=0x9c64e56 "DISPLAY=:0.0", reset_env=false, tty=0x0, 
    avoid_loops=false, startup_id_str=0x9c64e67 "boxx;1247748919;370891;4652_TIME1396938") at ../../kinit/kinit.cpp:676
#41 0x0804ea35 in handle_launcher_request (sock=<value optimized out>, who=<value optimized out>) at ../../kinit/kinit.cpp:1168
#42 0x0804efc3 in handle_requests (waitForPid=<value optimized out>) at ../../kinit/kinit.cpp:1361
#43 0x0804fc0f in main (argc=2, argv=0xbffe18c4, envp=0xbffe18d0) at ../../kinit/kinit.cpp:1788

Reported using DrKonqi
Comment 1 Dario Andres 2009-08-23 01:08:16 UTC
*** Bug 204737 has been marked as a duplicate of this bug. ***
Comment 2 Dario Andres 2009-09-21 01:22:52 UTC
*** Bug 208033 has been marked as a duplicate of this bug. ***
Comment 3 Dario Andres 2009-10-03 19:44:17 UTC
*** Bug 209215 has been marked as a duplicate of this bug. ***
Comment 4 Dario Andres 2009-10-17 22:10:36 UTC
*** Bug 210762 has been marked as a duplicate of this bug. ***
Comment 5 Dario Andres 2009-10-22 23:32:31 UTC
*** Bug 211484 has been marked as a duplicate of this bug. ***
Comment 6 Dario Andres 2009-10-22 23:34:55 UTC
*** Bug 211471 has been marked as a duplicate of this bug. ***
Comment 7 Dario Andres 2009-10-23 14:46:01 UTC
*** Bug 211537 has been marked as a duplicate of this bug. ***
Comment 8 Dario Andres 2009-10-24 18:45:38 UTC
From bug 211667:

What I was doing when the application crashed:
I pressed Ctrl-V to paste a string into a document and Ctrl-S shortly after
that to save the document. Immediately after Ctrl-S kate crashed.
Comment 9 Dario Andres 2009-10-24 18:45:43 UTC
*** Bug 211667 has been marked as a duplicate of this bug. ***
Comment 10 Dario Andres 2009-10-29 14:22:43 UTC
From bug 212269:
What I was doing when the application crashed:
I was editing a remote file opened via the sftp protocol in Dolphin.
I edited the file, saved it, and changed cursor position when Kate crashed.
Comment 11 Dario Andres 2009-10-29 14:22:48 UTC
*** Bug 212269 has been marked as a duplicate of this bug. ***
Comment 12 Michel Ludwig 2009-11-05 11:16:49 UTC
*** Bug 213205 has been marked as a duplicate of this bug. ***
Comment 13 Jonathan Thomas 2009-11-10 02:00:40 UTC
*** Bug 213512 has been marked as a duplicate of this bug. ***
Comment 14 Dario Andres 2009-11-10 22:30:02 UTC
*** Bug 214012 has been marked as a duplicate of this bug. ***
Comment 15 Dario Andres 2009-11-19 01:57:28 UTC
*** Bug 215224 has been marked as a duplicate of this bug. ***
Comment 16 Dario Andres 2009-11-23 22:38:17 UTC
From bug 215847:
---
Kile randomly (but quite often) crashes on exit. Before the crash, I usually
work on a project which involves 5 or 6 tex documents. I also have the dvi open
in another window using Okular.
Comment 17 Dario Andres 2009-11-23 22:38:20 UTC
*** Bug 215847 has been marked as a duplicate of this bug. ***
Comment 18 Dario Andres 2009-12-02 16:58:00 UTC
*** Bug 217035 has been marked as a duplicate of this bug. ***
Comment 19 Michel Ludwig 2009-12-05 11:44:34 UTC
*** Bug 217406 has been marked as a duplicate of this bug. ***
Comment 20 Michel Ludwig 2009-12-09 16:06:51 UTC
*** Bug 217998 has been marked as a duplicate of this bug. ***
Comment 21 Dario Andres 2009-12-18 21:50:05 UTC
*** Bug 217431 has been marked as a duplicate of this bug. ***
Comment 22 Dominik Haumann 2009-12-27 19:30:28 UTC
*** Bug 220289 has been marked as a duplicate of this bug. ***
Comment 23 Dominik Haumann 2009-12-27 19:33:21 UTC
19 duplicate reports. This crash happens far too often and probably has nothing to do with samba at all. Setting priority to very high.
Comment 24 Dario Andres 2010-01-08 19:33:19 UTC
Bug 221835 seems to have a reproducible testcase for this crash...
Comment 25 Milian Wolff 2010-01-08 19:37:38 UTC
*** Bug 221835 has been marked as a duplicate of this bug. ***
Comment 26 Milian Wolff 2010-01-08 19:38:56 UTC
Created attachment 39698 [details]
testcase with which one can reproduce the crash

From bug 221835 (thanks Jerome Leclanche):
-------
100% reproducible on this file (cant attach files from the reporting assistant,
using dpaste): http://dpaste.com/hold/142610/

Cut the from_string method (lines 14-34) and paste it at the end of the file.


The crash can be reproduced everytime.
-----

I could reproduce the crash, will try to have a look at fixing it.
Comment 27 Milian Wolff 2010-01-09 02:22:20 UTC
SVN commit 1071923 by mwolff:

only expand forwards, fixes crash when the group size was bigger than the default group size and there was no following group available.

it works for me and seems reasonable, but sadly I cannot use the KateTranslationDebugger as it even fails without this change in various places...

Please give me feedback, who knows the whole translation code? it's sadly not good documented :(

BUG: 200450

CCMAIL: kwrite-devel@kde.org

 M  +1 -1      katesmartmanager.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1071923
Comment 28 Dario Andres 2010-01-18 22:13:10 UTC
*** Bug 222995 has been marked as a duplicate of this bug. ***
Comment 29 Milian Wolff 2010-01-22 19:53:00 UTC
*** Bug 223836 has been marked as a duplicate of this bug. ***
Comment 30 Unknown 2010-01-22 20:01:55 UTC
Is this patch supposed to be in RC1 (4.3.90)? If so, this should be reopened.
I wrote some more hints in Bug 223836, maybe it worth a try.
Comment 31 Dario Andres 2010-01-22 20:02:56 UTC
No, the fix is included since RC2...
Comment 32 Milian Wolff 2010-01-28 17:04:07 UTC
*** Bug 224632 has been marked as a duplicate of this bug. ***
Comment 33 Dominik Haumann 2010-03-28 00:45:02 UTC
*** Bug 231969 has been marked as a duplicate of this bug. ***
Comment 34 Dario Andres 2010-03-28 00:58:16 UTC
@Dominik Haumann: the last one (bug 231969) is on 4.4.1... so .. it could be a different crash (or this crash is still unfixed) ?
Comment 35 Dominik Haumann 2010-03-28 01:29:00 UTC
The backtrace is at least the same. If it's still valid, this one should be reopened. However, there were also other fixes for KDE 4.5 that are not backported. So this may still be fixed, see bug #226409.

If this crash still happens in trunk, this is indeed still valid. Milian, maybe you have an idea, since you worked on this already?
Comment 36 Dominik Haumann 2010-05-23 00:26:17 UTC
*** Bug 235930 has been marked as a duplicate of this bug. ***
Comment 37 Dominik Haumann 2010-05-23 00:26:56 UTC
*** Bug 225230 has been marked as a duplicate of this bug. ***
Comment 38 Michel Ludwig 2010-05-30 23:23:16 UTC
*** Bug 235506 has been marked as a duplicate of this bug. ***
Comment 39 Nicolas L. 2010-07-13 12:32:14 UTC
*** Bug 244453 has been marked as a duplicate of this bug. ***
Comment 40 Nicolas L. 2010-07-27 18:09:24 UTC
*** Bug 245923 has been marked as a duplicate of this bug. ***
Comment 41 Michel Ludwig 2010-08-21 09:32:46 UTC
*** Bug 248572 has been marked as a duplicate of this bug. ***
Comment 42 Dario Andres 2010-11-17 02:37:55 UTC
*** Bug 257105 has been marked as a duplicate of this bug. ***