Created attachment 108761 [details] Sample document that causes Kate to crash. Kate crashed while editing some JavaScript code. I was able to trim the file down quite a bit and still have Kate crash whilst editing it. Steps to reproduce: 1. Load the file $ kate crash.js 2. Position the cursor at the end of line 13, after "});" 3. Press enter. Kate crashes. Application: kate (16.12.3) Qt Version: 5.7.1 Frameworks Version: 5.38.0 Operating System: Linux 4.13.5-100.fc25.x86_64 x86_64 Distribution (Platform): Fedora RPMs The crash reporting assistant indicates the backtrace does not have enough information, though I've added all debuginfo packages to my system. It's pasted below in case it's useful nonetheless. Application: Kate (kate), signal: Segmentation fault Using host libthread_db library "/lib64/libthread_db.so.1". 84 T_PSEUDO (SYSCALL_SYMBOL, SYSCALL_NAME, SYSCALL_NARGS) [Current thread is 1 (Thread 0x7f4be76ce180 (LWP 11052))] Thread 2 (Thread 0x7f4be76c7700 (LWP 11053)): #0 0x00007f4bf419ff3d in poll () at ../sysdeps/unix/syscall-template.S:84 #1 0x00007f4bed42f166 in g_main_context_poll (priority=<optimized out>, n_fds=1, fds=0x7f4be0011990, timeout=<optimized out>, context=0x7f4be0001600) at gmain.c:4228 #2 0x00007f4bed42f166 in g_main_context_iterate (context=context@entry=0x7f4be0001600, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3924 #3 0x00007f4bed42f27c in g_main_context_iteration (context=0x7f4be0001600, may_block=may_block@entry=1) at gmain.c:3990 #4 0x00007f4bf4fa66eb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f4be00008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:425 #5 0x00007f4bf4f5768a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f4be76c6cc0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:212 #6 0x00007f4bf4db45e3 in QThread::exec() (this=this@entry=0x7f4bf5227060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread.cpp:507 #7 0x00007f4bf51b3fb9 in QDBusConnectionManager::run() (this=0x7f4bf5227060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at qdbusconnection.cpp:178 #8 0x00007f4bf4db89ca in QThreadPrivate::start(void*) (arg=0x7f4bf5227060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread_unix.cpp:368 #9 0x00007f4bf247173a in start_thread (arg=0x7f4be76c7700) at pthread_create.c:333 #10 0x00007f4bf41abe7f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97 Thread 1 (Thread 0x7f4be76ce180 (LWP 11052)): [KCrash Handler] #6 0x00007f4bc9f98c79 in () #7 0x00007f4bc6a10478 in () #8 0x0003200000000000 in () #9 0x00007f4bc6a103f8 in () #10 0x00007ffc0f5e43a0 in () #11 0x000055c8eca8a9f0 in () #12 0x000055c8eca8a9f0 in () #13 0x00007f4bc6a10498 in () #14 0x00007f4bc6a10490 in () #15 0x00007f4bc6a103f8 in () #16 0x00007f4bf3e6f58b in QV4::SimpleScriptFunction::call(QV4::Managed const*, QV4::CallData*) (that=<optimized out>, callData=<optimized out>) at jsruntime/qv4functionobject.cpp:582 #17 0x00007f4bf3ed6933 in QV4::Object::call(QV4::CallData*) const (d=0x7f4bc6a10438, this=0x7f4bc6a10488) at jsruntime/qv4object_p.h:332 #18 0x00007f4bf3ed6933 in QV4::Runtime::callActivationProperty(QV4::ExecutionEngine*, int, QV4::CallData*) (engine=0x55c8eca8a9f0, nameIndex=<optimized out>, callData=0x7f4bc6a10438) at jsruntime/qv4runtime.cpp:980 #19 0x00007f4bc9f9f9f2 in () #20 0x00007ffc0f5e44b0 in () #21 0x00007f4bc6a10408 in () #22 0x00007f4bc6a103d8 in () #23 0x00007f4bf3e7d9f7 in QV4::Object::getValue(QV4::Value const&, QV4::PropertyAttributes) const (attrs=..., v=..., this=<optimized out>) at jsruntime/qv4object_p.h:210 #24 0x00007f4bf3e7d9f7 in QV4::Object::internalGet(QV4::String*, bool*) const (this=<optimized out>, name=<optimized out>, hasProperty=<optimized out>) at jsruntime/qv4object.cpp:628 #25 0x00007f4bf3e49e56 in QV4::Object::get(QV4::String*, bool*) const (hasProperty=0x7ffc0f5e4570, name=0x7f4bc6a103f0, this=<optimized out>) at ../../src/qml/jsruntime/qv4object_p.h:306 #26 0x00007f4bf3e49e56 in QV4::ExecutionContext::getPropertyAndBase(QV4::String*, QV4::Value*) (this=0x55c8ec8aba20, name=0x7f4bc6a103f0, base=0x7f4bc6a103e0) at jsruntime/qv4context.cpp:516 #27 0x00007f4bf3ed6933 in QV4::Object::call(QV4::CallData*) const (d=0x7f4bc6a10398, this=0x7f4bc6a103e8) at jsruntime/qv4object_p.h:332 #28 0x00007f4bf3ed6933 in QV4::Runtime::callActivationProperty(QV4::ExecutionEngine*, int, QV4::CallData*) (engine=0x55c8eca8a9f0, nameIndex=<optimized out>, callData=0x7f4bc6a10398) at jsruntime/qv4runtime.cpp:980 #29 0x00007f4bc9fa1da1 in () #30 0x0000000000002010 in () #31 0x00007f4bf4126af0 in _int_free (av=0x7ffc0f5e46b0, p=0x3400000000000, have_lock=-324490768) at malloc.c:4110 #32 0x000055c8ec8aba20 in () #33 0x0000034c0f5e0005 in () #34 0x00007f4bc7af7ab0 in () #35 0x00007f4bc6a10360 in () #36 0x0000000000000000 in ()
After upgrading to Fedora 26, the bug has gone away. Also the reproduction steps do not cause any issue with Kate on OpenSUSE Tumbleweed. Therefore concluding that this was an issue with Kate and/or its associated libraries on Fedora 25, which has since been fixed. Updating bug to resolved.