Bug 405401 - [wayland] KDevelop crashes when showing/hiding scrollbar text preview
Summary: [wayland] KDevelop crashes when showing/hiding scrollbar text preview
Status: RESOLVED WORKSFORME
Alias: None
Product: frameworks-ktexteditor
Classification: Frameworks and Libraries
Component: general (show other bugs)
Version: unspecified
Platform: Neon Linux
: NOR crash
Target Milestone: ---
Assignee: KWrite Developers
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2019-03-12 18:22 UTC by frmdstryr
Modified: 2019-08-05 19:08 UTC (History)
5 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
New crash information added by DrKonqi (28.76 KB, text/plain)
2019-03-12 20:34 UTC, frmdstryr
Details
New crash information added by DrKonqi (7.85 KB, text/plain)
2019-03-12 21:02 UTC, frmdstryr
Details

Note You need to log in before you can comment on or make changes to this bug.
Description frmdstryr 2019-03-12 18:22:19 UTC
Application: kdevelop (5.3.2)

Qt Version: 5.12.0
Frameworks Version: 5.56.0
Operating System: Linux 4.15.0-46-generic x86_64
Distribution: KDE neon User Edition 5.15

-- Information about the crash:
- What I was doing when the application crashed:

On a wayland plasma session KDevelop frequently crashes when moving my mouse from one screen to another. It occurs more often when using a split view of editors. 

A ticket was opened on this issue before in which said this was supposed to be fixed in Qt 5.12 but that apparently is not true as it still happens on the latest version of plasma.

This happens VERY frequenly and is extremely annoying.  Thankfully KDevelop is great at saving work and nothing is ever lost when this happens (except time). Any help would be appreciated...

The crash can be reproduced sometimes.

-- Backtrace:
Application: KDevelop (kdevelop), signal: Segmentation fault
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f5beb576bc0 (LWP 32177))]

Thread 16 (Thread 0x7f5b61ffb700 (LWP 32315)):
#0  0x00007f5be088f9f3 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55a60cea01e4) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  0x00007f5be088f9f3 in __pthread_cond_wait_common (abstime=0x0, mutex=0x55a60cea0190, cond=0x55a60cea01b8) at pthread_cond_wait.c:502
#2  0x00007f5be088f9f3 in __pthread_cond_wait (cond=0x55a60cea01b8, mutex=0x55a60cea0190) at pthread_cond_wait.c:655
#3  0x00007f5be8267b4b in QWaitConditionPrivate::wait(QDeadlineTimer) (deadline=..., this=0x55a60cea0190) at thread/qwaitcondition_unix.cpp:146
#4  0x00007f5be8267b4b in QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=<optimized out>, mutex=0x55a60cf3e240, deadline=...) at thread/qwaitcondition_unix.cpp:225
#5  0x00007f5be8267e59 in QWaitCondition::wait(QMutex*, unsigned long) (this=0x55a60cf3e1a8, mutex=0x55a60cf3e240, time=<optimized out>) at thread/qwaitcondition_unix.cpp:208
#6  0x00007f5bde48b935 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () at /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#7  0x00007f5bde48f7e8 in  () at /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#8  0x00007f5bde48abfd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#9  0x00007f5bde48d6ab in ThreadWeaver::Thread::run() () at /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#10 0x00007f5be8260bc2 in QThreadPrivate::start(void*) (arg=0x7f5b4c0025e0) at thread/qthread_unix.cpp:361
#11 0x00007f5be08896db in start_thread (arg=0x7f5b61ffb700) at pthread_create.c:463
#12 0x00007f5be7b6088f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 15 (Thread 0x7f5b627fc700 (LWP 32314)):
#0  0x00007f5be7b5a839 in syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1  0x00007f5be8260ec5 in QtLinuxFutex::_q_futex(int*, int, int, unsigned long long, int*, int) (val3=0, addr2=0x0, val2=0, val=3, op=0, addr=<optimized out>) at thread/qfutex_p.h:92
#2  0x00007f5be8260ec5 in QtLinuxFutex::futexWait<QBasicAtomicPointer<QMutexData> >(QBasicAtomicPointer<QMutexData>&, QBasicAtomicPointer<QMutexData>::Type) (expectedValue=<optimized out>, futex=...) at thread/qfutex_p.h:107
#3  0x00007f5be8260ec5 in lockInternal_helper<false> (timeout=-1, elapsedTimer=0x0, d_ptr=...) at thread/qmutex_linux.cpp:142
#4  0x00007f5be8260ec5 in QBasicMutex::lockInternal() (this=0x7f5beb039d68 <(anonymous namespace)::tryLockMutex>) at thread/qmutex_linux.cpp:159
#5  0x00007f5be82610ab in QMutex::lock() (this=this@entry=0x7f5beb039d68 <(anonymous namespace)::tryLockMutex>) at thread/qmutex.cpp:227
#6  0x00007f5beae06a41 in QMutexLocker::QMutexLocker(QBasicMutex*) (m=0x7f5beb039d68 <(anonymous namespace)::tryLockMutex>, this=<synthetic pointer>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qmutex.h:206
#7  0x00007f5beae06a41 in KDevelop::ForegroundLock::relock() (this=0x7f5b627fae1f) at ./kdevplatform/util/foregroundlock.cpp:104
#8  0x00007f5be6834ec7 in KDevelop::ParseJob::translateDUChainToRevision(KDevelop::TopDUContext*) (this=0x7f5b582d6970, context=0x55a610a61b20) at ./kdevplatform/language/backgroundparser/parsejob.cpp:428
#9  0x00007f5b810dbd7b in  () at /usr/lib/x86_64-linux-gnu/qt5/plugins/kdevplatform/31/kdevpythonlanguagesupport.so
#10 0x00007f5bde48e9ca in ThreadWeaver::IdDecorator::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) () at /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#11 0x00007f5bde48efa8 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#12 0x00007f5bde48dc10 in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#13 0x00007f5bde48d76d in ThreadWeaver::Thread::run() () at /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#14 0x00007f5be8260bc2 in QThreadPrivate::start(void*) (arg=0x7f5b580021e0) at thread/qthread_unix.cpp:361
#15 0x00007f5be08896db in start_thread (arg=0x7f5b627fc700) at pthread_create.c:463
#16 0x00007f5be7b6088f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 14 (Thread 0x7f5b62ffd700 (LWP 32313)):
#0  0x00007f5be088f9f3 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55a60cea01e4) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  0x00007f5be088f9f3 in __pthread_cond_wait_common (abstime=0x0, mutex=0x55a60cea0190, cond=0x55a60cea01b8) at pthread_cond_wait.c:502
#2  0x00007f5be088f9f3 in __pthread_cond_wait (cond=0x55a60cea01b8, mutex=0x55a60cea0190) at pthread_cond_wait.c:655
#3  0x00007f5be8267b4b in QWaitConditionPrivate::wait(QDeadlineTimer) (deadline=..., this=0x55a60cea0190) at thread/qwaitcondition_unix.cpp:146
#4  0x00007f5be8267b4b in QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=<optimized out>, mutex=0x55a60cf3e240, deadline=...) at thread/qwaitcondition_unix.cpp:225
#5  0x00007f5be8267e59 in QWaitCondition::wait(QMutex*, unsigned long) (this=0x55a60cf3e1a8, mutex=0x55a60cf3e240, time=<optimized out>) at thread/qwaitcondition_unix.cpp:208
#6  0x00007f5bde48b935 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () at /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#7  0x00007f5bde48f7e8 in  () at /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#8  0x00007f5bde48abfd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#9  0x00007f5bde48f842 in  () at /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#10 0x00007f5bde48abfd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#11 0x00007f5bde48d6ab in ThreadWeaver::Thread::run() () at /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#12 0x00007f5be8260bc2 in QThreadPrivate::start(void*) (arg=0x7f5b540025e0) at thread/qthread_unix.cpp:361
#13 0x00007f5be08896db in start_thread (arg=0x7f5b62ffd700) at pthread_create.c:463
#14 0x00007f5be7b6088f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 13 (Thread 0x7f5b637fe700 (LWP 32312)):
#0  0x00007f5be7b5a839 in syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1  0x00007f5be8260fd2 in QtLinuxFutex::_q_futex(int*, int, int, unsigned long long, int*, int) (val3=0, addr2=0x0, val2=<optimized out>, val=3, op=0, addr=<optimized out>) at thread/qfutex_p.h:92
#2  0x00007f5be8260fd2 in QtLinuxFutex::futexWait<QBasicAtomicPointer<QMutexData> >(QBasicAtomicPointer<QMutexData>&, QBasicAtomicPointer<QMutexData>::Type, long long) (nstimeout=<optimized out>, expectedValue=0x3, futex=...) at thread/qfutex_p.h:115
#3  0x00007f5be8260fd2 in lockInternal_helper<true> (elapsedTimer=0x7f5b637fcc50, timeout=<optimized out>, d_ptr=...) at thread/qmutex_linux.cpp:127
#4  0x00007f5be8260fd2 in QBasicMutex::lockInternal(int) (this=0x7f5beb039d70 <(anonymous namespace)::internalMutex>, timeout=<optimized out>) at thread/qmutex_linux.cpp:167
#5  0x00007f5be826107f in QMutex::tryLock(int) (this=this@entry=0x7f5beb039d70 <(anonymous namespace)::internalMutex>, timeout=timeout@entry=10) at thread/qmutex.cpp:261
#6  0x00007f5beae0657f in (anonymous namespace)::tryLockForegroundMutexInternal(int) (interval=10) at ./kdevplatform/util/foregroundlock.cpp:60
#7  0x00007f5beae06bec in KDevelop::ForegroundLock::relock() (this=0x7f5b637fce38) at ./kdevplatform/util/foregroundlock.cpp:106
#8  0x00007f5be683581b in KDevelop::ParseJob::readContents() (this=0x55a6177bdad0) at ./kdevplatform/language/backgroundparser/parsejob.cpp:253
#9  0x00007f5b810dbcc0 in  () at /usr/lib/x86_64-linux-gnu/qt5/plugins/kdevplatform/31/kdevpythonlanguagesupport.so
#10 0x00007f5bde48e9ca in ThreadWeaver::IdDecorator::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) () at /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#11 0x00007f5bde48efa8 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#12 0x00007f5bde48dc10 in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#13 0x00007f5bde48d76d in ThreadWeaver::Thread::run() () at /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#14 0x00007f5be8260bc2 in QThreadPrivate::start(void*) (arg=0x7f5b5c0025e0) at thread/qthread_unix.cpp:361
#15 0x00007f5be08896db in start_thread (arg=0x7f5b637fe700) at pthread_create.c:463
#16 0x00007f5be7b6088f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 12 (Thread 0x7f5b63fff700 (LWP 32311)):
#0  0x00007f5be088f9f3 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55a60cea01e4) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  0x00007f5be088f9f3 in __pthread_cond_wait_common (abstime=0x0, mutex=0x55a60cea0190, cond=0x55a60cea01b8) at pthread_cond_wait.c:502
#2  0x00007f5be088f9f3 in __pthread_cond_wait (cond=0x55a60cea01b8, mutex=0x55a60cea0190) at pthread_cond_wait.c:655
#3  0x00007f5be8267b4b in QWaitConditionPrivate::wait(QDeadlineTimer) (deadline=..., this=0x55a60cea0190) at thread/qwaitcondition_unix.cpp:146
#4  0x00007f5be8267b4b in QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=<optimized out>, mutex=0x55a60cf3e240, deadline=...) at thread/qwaitcondition_unix.cpp:225
#5  0x00007f5be8267e59 in QWaitCondition::wait(QMutex*, unsigned long) (this=0x55a60cf3e1a8, mutex=0x55a60cf3e240, time=<optimized out>) at thread/qwaitcondition_unix.cpp:208
#6  0x00007f5bde48b935 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () at /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#7  0x00007f5bde48f7e8 in  () at /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#8  0x00007f5bde48abfd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#9  0x00007f5bde48f842 in  () at /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#10 0x00007f5bde48abfd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#11 0x00007f5bde48f842 in  () at /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#12 0x00007f5bde48abfd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#13 0x00007f5bde48f842 in  () at /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#14 0x00007f5bde48abfd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#15 0x00007f5bde48d6ab in ThreadWeaver::Thread::run() () at /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#16 0x00007f5be8260bc2 in QThreadPrivate::start(void*) (arg=0x55a61713e4e0) at thread/qthread_unix.cpp:361
#17 0x00007f5be08896db in start_thread (arg=0x7f5b63fff700) at pthread_create.c:463
#18 0x00007f5be7b6088f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 11 (Thread 0x7f5b70bd5700 (LWP 32306)):
#0  0x00007f5be088fed9 in futex_reltimed_wait_cancelable (private=<optimized out>, reltime=0x7f5b70bd4840, expected=0, futex_word=0x55a61bd55360) at ../sysdeps/unix/sysv/linux/futex-internal.h:142
#1  0x00007f5be088fed9 in __pthread_cond_wait_common (abstime=0x7f5b70bd4900, mutex=0x55a61bd55310, cond=0x55a61bd55338) at pthread_cond_wait.c:533
#2  0x00007f5be088fed9 in __pthread_cond_timedwait (cond=0x55a61bd55338, mutex=0x55a61bd55310, abstime=0x7f5b70bd4900) at pthread_cond_wait.c:667
#3  0x00007f5be8267ac6 in QWaitConditionPrivate::wait_relative(QDeadlineTimer) (this=0x55a61bd55310, deadline=...) at thread/qwaitcondition_unix.cpp:136
#4  0x00007f5be8267ac6 in QWaitConditionPrivate::wait(QDeadlineTimer) (deadline=..., this=0x55a61bd55310) at thread/qwaitcondition_unix.cpp:144
#5  0x00007f5be8267ac6 in QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=<optimized out>, mutex=0x55a61bd55ad0, deadline=...) at thread/qwaitcondition_unix.cpp:225
#6  0x00007f5be8267e25 in QWaitCondition::wait(QMutex*, unsigned long) (this=this@entry=0x55a61bd57480, mutex=mutex@entry=0x55a61bd55ad0, time=<optimized out>) at thread/qwaitcondition_unix.cpp:209
#7  0x00007f5be82655dd in QThreadPoolThread::run() (this=0x55a61bd57470) at thread/qthreadpool.cpp:144
#8  0x00007f5be8260bc2 in QThreadPrivate::start(void*) (arg=0x55a61bd57470) at thread/qthread_unix.cpp:361
#9  0x00007f5be08896db in start_thread (arg=0x7f5b70bd5700) at pthread_create.c:463
#10 0x00007f5be7b6088f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 10 (Thread 0x7f5b713d6700 (LWP 32284)):
#0  0x00007f5be7b53bf9 in __GI___poll (fds=0x7f5b6c0139e0, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f5bde6ed539 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f5bde6ed64c in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f5be849615b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f5b6c01a260, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#4  0x00007f5be843764a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f5b713d59c0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#5  0x00007f5be825f41a in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:531
#6  0x00007f5b737057f5 in  () at /usr/lib/x86_64-linux-gnu/qt5/qml/QtQuick/XmlListModel/libqmlxmllistmodelplugin.so
#7  0x00007f5be8260bc2 in QThreadPrivate::start(void*) (arg=0x55a61bcc7630) at thread/qthread_unix.cpp:361
#8  0x00007f5be08896db in start_thread (arg=0x7f5b713d6700) at pthread_create.c:463
#9  0x00007f5be7b6088f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 9 (Thread 0x7f5b79ab9700 (LWP 32201)):
#0  0x00007f5be7b53bf9 in __GI___poll (fds=0x7f5b74003ce0, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f5bde6ed539 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f5bde6ed64c in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f5be849615b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f5b74000b20, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#4  0x00007f5be843764a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f5b79ab8910, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#5  0x00007f5be825f41a in QThread::exec() (this=this@entry=0x55a610876660) at thread/qthread.cpp:531
#6  0x00007f5be6966f0f in KDevelop::CompletionWorkerThread::run() (this=0x55a610876660) at ./kdevplatform/language/codecompletion/codecompletionmodel.cpp:79
#7  0x00007f5be8260bc2 in QThreadPrivate::start(void*) (arg=0x55a610876660) at thread/qthread_unix.cpp:361
#8  0x00007f5be08896db in start_thread (arg=0x7f5b79ab9700) at pthread_create.c:463
#9  0x00007f5be7b6088f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 8 (Thread 0x7f5b80bfc700 (LWP 32198)):
#0  0x00007f5be7b5a839 in syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1  0x00007f5be8260ec5 in QtLinuxFutex::_q_futex(int*, int, int, unsigned long long, int*, int) (val3=0, addr2=0x0, val2=0, val=3, op=0, addr=<optimized out>) at thread/qfutex_p.h:92
#2  0x00007f5be8260ec5 in QtLinuxFutex::futexWait<QBasicAtomicPointer<QMutexData> >(QBasicAtomicPointer<QMutexData>&, QBasicAtomicPointer<QMutexData>::Type) (expectedValue=<optimized out>, futex=...) at thread/qfutex_p.h:107
#3  0x00007f5be8260ec5 in lockInternal_helper<false> (timeout=-1, elapsedTimer=0x0, d_ptr=...) at thread/qmutex_linux.cpp:142
#4  0x00007f5be8260ec5 in QBasicMutex::lockInternal() (this=0x7f5beb039d68 <(anonymous namespace)::tryLockMutex>) at thread/qmutex_linux.cpp:159
#5  0x00007f5be82610ab in QMutex::lock() (this=this@entry=0x7f5beb039d68 <(anonymous namespace)::tryLockMutex>) at thread/qmutex.cpp:227
#6  0x00007f5beae06a41 in QMutexLocker::QMutexLocker(QBasicMutex*) (m=0x7f5beb039d68 <(anonymous namespace)::tryLockMutex>, this=<synthetic pointer>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qmutex.h:206
#7  0x00007f5beae06a41 in KDevelop::ForegroundLock::relock() (this=0x7f5b80bfb2d7) at ./kdevplatform/util/foregroundlock.cpp:104
#8  0x00007f5be695c028 in KDevelop::CodeCompletionWorker::computeCompletions(KDevelop::DUChainPointer<KDevelop::DUContext> const&, KTextEditor::Cursor const&, KTextEditor::View*) (this=0x55a60d238c70, context=..., position=..., view=0x55a610699560) at ./kdevplatform/language/codecompletion/codecompletionworker.cpp:84
#9  0x00007f5be8469992 in QObject::event(QEvent*) (this=0x55a60d238c70, e=<optimized out>) at kernel/qobject.cpp:1249
#10 0x00007f5be9c0283c in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x55a60c3efe80, receiver=receiver@entry=0x55a60d238c70, e=e@entry=0x55a6177c33f0) at kernel/qapplication.cpp:3752
#11 0x00007f5be9c09dd0 in QApplication::notify(QObject*, QEvent*) (this=0x7ffff80f4ff0, receiver=0x55a60d238c70, e=0x55a6177c33f0) at kernel/qapplication.cpp:3499
#12 0x00007f5be8439328 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x55a60d238c70, event=0x55a6177c33f0) at kernel/qcoreapplication.cpp:1061
#13 0x00007f5be84394fe in QCoreApplication::sendEvent(QObject*, QEvent*) (receiver=<optimized out>, event=event@entry=0x55a6177c33f0) at kernel/qcoreapplication.cpp:1451
#14 0x00007f5be843be87 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x55a60d238e40) at kernel/qcoreapplication.cpp:1800
#15 0x00007f5be843c428 in QCoreApplication::sendPostedEvents(QObject*, int) (receiver=receiver@entry=0x0, event_type=event_type@entry=0) at kernel/qcoreapplication.cpp:1654
#16 0x00007f5be8496b23 in postEventSourceDispatch(GSource*, GSourceFunc, gpointer) (s=0x7f5b7c0047a0) at kernel/qeventdispatcher_glib.cpp:276
#17 0x00007f5bde6ed387 in g_main_context_dispatch () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#18 0x00007f5bde6ed5c0 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#19 0x00007f5bde6ed64c in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#20 0x00007f5be849613f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f5b7c000b20, flags=...) at kernel/qeventdispatcher_glib.cpp:422
#21 0x00007f5be843764a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f5b80bfb910, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#22 0x00007f5be825f41a in QThread::exec() (this=this@entry=0x55a60d2464c0) at thread/qthread.cpp:531
#23 0x00007f5be6966f0f in KDevelop::CompletionWorkerThread::run() (this=0x55a60d2464c0) at ./kdevplatform/language/codecompletion/codecompletionmodel.cpp:79
#24 0x00007f5be8260bc2 in QThreadPrivate::start(void*) (arg=0x55a60d2464c0) at thread/qthread_unix.cpp:361
#25 0x00007f5be08896db in start_thread (arg=0x7f5b80bfc700) at pthread_create.c:463
#26 0x00007f5be7b6088f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 7 (Thread 0x7f5b8bbd0700 (LWP 32185)):
#0  0x00007f5bde6ea4ac in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#1  0x00007f5bde6ec9d3 in g_main_context_prepare () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f5bde6ed46b in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f5bde6ed64c in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f5be849615b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f5b84000b20, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#5  0x00007f5be843764a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f5b8bbcf9c0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#6  0x00007f5be825f41a in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:531
#7  0x00007f5be16972e5 in  () at /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#8  0x00007f5be8260bc2 in QThreadPrivate::start(void*) (arg=0x55a60d08f450) at thread/qthread_unix.cpp:361
#9  0x00007f5be08896db in start_thread (arg=0x7f5b8bbd0700) at pthread_create.c:463
#10 0x00007f5be7b6088f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 6 (Thread 0x7f5b95ee4700 (LWP 32183)):
#0  0x00007f5be7b4f0b4 in __GI___libc_read (fd=14, buf=0x7f5b95ee37d0, nbytes=16) at ../sysdeps/unix/sysv/linux/read.c:27
#1  0x00007f5bde731cd0 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f5bde6ed027 in g_main_context_check () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f5bde6ed4e0 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f5bde6ed64c in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007f5be849615b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f5b8c000b20, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#6  0x00007f5be843764a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f5b95ee39e0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#7  0x00007f5be825f41a in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:531
#8  0x00007f5be8260bc2 in QThreadPrivate::start(void*) (arg=0x55a60d0516e0) at thread/qthread_unix.cpp:361
#9  0x00007f5be08896db in start_thread (arg=0x7f5b95ee4700) at pthread_create.c:463
#10 0x00007f5be7b6088f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 5 (Thread 0x7f5b9d3e9700 (LWP 32181)):
#0  0x00007f5be7b6fec5 in __GI___clock_gettime (clock_id=clock_id@entry=1, tp=tp@entry=0x7f5b9d3e8750) at ../sysdeps/unix/clock_gettime.c:134
#1  0x00007f5be8495a41 in qt_clock_gettime (ts=0x7f5b9d3e8750, clock=<optimized out>) at kernel/qelapsedtimer_unix.cpp:111
#2  0x00007f5be8495a41 in do_gettime (frac=<synthetic pointer>, sec=<synthetic pointer>) at kernel/qelapsedtimer_unix.cpp:166
#3  0x00007f5be8495a41 in qt_gettime() () at kernel/qelapsedtimer_unix.cpp:175
#4  0x00007f5be8494279 in QTimerInfoList::updateCurrentTime() (this=this@entry=0x7f5b900048f0) at kernel/qtimerinfo_unix.cpp:91
#5  0x00007f5be8494855 in QTimerInfoList::timerWait(timespec&) (this=0x7f5b900048f0, tm=...) at kernel/qtimerinfo_unix.cpp:388
#6  0x00007f5be8495e9e in timerSourcePrepareHelper (timeout=0x7f5b9d3e8814, src=<optimized out>) at kernel/qeventdispatcher_glib.cpp:132
#7  0x00007f5be8495e9e in timerSourcePrepare(GSource*, gint*) (source=<optimized out>, timeout=0x7f5b9d3e8814) at kernel/qeventdispatcher_glib.cpp:165
#8  0x00007f5bde6eca98 in g_main_context_prepare () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#9  0x00007f5bde6ed46b in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#10 0x00007f5bde6ed64c in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#11 0x00007f5be849615b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f5b90000b20, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#12 0x00007f5be843764a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f5b9d3e89e0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#13 0x00007f5be825f41a in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:531
#14 0x00007f5be8260bc2 in QThreadPrivate::start(void*) (arg=0x7f5bddfd86c8 <KDevelop::(anonymous namespace)::Q_QGS_s_parsingThread::innerFunction()::holder+8>) at thread/qthread_unix.cpp:361
#15 0x00007f5be08896db in start_thread (arg=0x7f5b9d3e9700) at pthread_create.c:463
#16 0x00007f5be7b6088f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 4 (Thread 0x7f5b9e67f700 (LWP 32180)):
#0  0x00007f5be7b53bf9 in __GI___poll (fds=0x7f5b98004f80, nfds=1, timeout=176182) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f5bde6ed539 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f5bde6ed64c in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f5be849615b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f5b98000b20, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#4  0x00007f5be843764a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f5b9e67e970, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#5  0x00007f5be825f41a in QThread::exec() (this=this@entry=0x55a60cfddbd0) at thread/qthread.cpp:531
#6  0x00007f5be685fa3b in KDevelop::DUChainPrivate::CleanupThread::run() (this=0x55a60cfddbd0) at ./kdevplatform/language/duchain/duchain.cpp:287
#7  0x00007f5be8260bc2 in QThreadPrivate::start(void*) (arg=0x55a60cfddbd0) at thread/qthread_unix.cpp:361
#8  0x00007f5be08896db in start_thread (arg=0x7f5b9e67f700) at pthread_create.c:463
#9  0x00007f5be7b6088f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7f5baeaa2700 (LWP 32179)):
#0  0x00007f5be7b53bf9 in __GI___poll (fds=0x7f5ba8003ce0, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f5bde6ed539 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f5bde6ed64c in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f5be849615b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f5ba8000b20, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#4  0x00007f5be843764a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f5baeaa19b0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#5  0x00007f5be825f41a in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:531
#6  0x00007f5be95ce015 in  () at /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5
#7  0x00007f5be8260bc2 in QThreadPrivate::start(void*) (arg=0x7f5be9845d80) at thread/qthread_unix.cpp:361
#8  0x00007f5be08896db in start_thread (arg=0x7f5baeaa2700) at pthread_create.c:463
#9  0x00007f5be7b6088f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7f5bb4d24700 (LWP 32178)):
#0  0x00007f5be088f9f3 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55a60c4f16c8) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  0x00007f5be088f9f3 in __pthread_cond_wait_common (abstime=0x0, mutex=0x55a60c4f1678, cond=0x55a60c4f16a0) at pthread_cond_wait.c:502
#2  0x00007f5be088f9f3 in __pthread_cond_wait (cond=0x55a60c4f16a0, mutex=0x55a60c4f1678) at pthread_cond_wait.c:655
#3  0x00007f5bb5fe7b1b in  () at /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#4  0x00007f5bb5fe7847 in  () at /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#5  0x00007f5be08896db in start_thread (arg=0x7f5bb4d24700) at pthread_create.c:463
#6  0x00007f5be7b6088f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7f5beb576bc0 (LWP 32177)):
[KCrash Handler]
#6  0x00007f5bb83cd897 in  () at /usr/lib/x86_64-linux-gnu/qt5/plugins/wayland-graphics-integration-client/libqt-plugin-wayland-egl.so
#7  0x00007f5be8ef06a4 in QWindowPrivate::setVisible(bool) (this=0x55a61bcf8210, visible=visible@entry=false) at kernel/qwindow.cpp:402
#8  0x00007f5be9c5bd6d in QWidgetWindow::setNativeWindowVisibility(bool) (this=this@entry=0x55a6177e5a20, visible=visible@entry=false) at kernel/qwidgetwindow.cpp:205
#9  0x00007f5be9c3654f in QWidgetPrivate::hide_sys() (this=this@entry=0x7f5b5804d890) at kernel/qwidget.cpp:8227
#10 0x00007f5be9c3d900 in QWidgetPrivate::hide_helper() (this=this@entry=0x7f5b5804d890) at kernel/qwidget.cpp:8155
#11 0x00007f5be9c425a0 in QWidget::setVisible(bool) (this=0x55a6176fd520, visible=<optimized out>) at kernel/qwidget.cpp:8357
#12 0x00007f5be9c3dcf8 in QWidgetPrivate::close_helper(QWidgetPrivate::CloseMode) (this=0x7f5b5804d890, mode=<optimized out>) at kernel/qwidget.cpp:8486
#13 0x00007f5be9c3e340 in QWidget::~QWidget() (this=0x55a6176fd520, __in_chrg=<optimized out>) at kernel/qwidget.cpp:1632
#14 0x00007f5be4a14211 in  () at /usr/lib/x86_64-linux-gnu/libKF5TextEditor.so.5
#15 0x00007f5be4a039c1 in  () at /usr/lib/x86_64-linux-gnu/libKF5TextEditor.so.5
#16 0x00007f5be9c42838 in QWidget::event(QEvent*) (this=this@entry=0x55a61060db00, event=event@entry=0x7ffff80f43a0) at kernel/qwidget.cpp:9268
#17 0x00007f5be9cedcc5 in QAbstractSlider::event(QEvent*) (this=this@entry=0x55a61060db00, e=e@entry=0x7ffff80f43a0) at widgets/qabstractslider.cpp:956
#18 0x00007f5be9d92972 in QScrollBar::event(QEvent*) (this=0x55a61060db00, event=0x7ffff80f43a0) at widgets/qscrollbar.cpp:490
#19 0x00007f5be9c0283c in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x55a60c3efe80, receiver=receiver@entry=0x55a61060db00, e=e@entry=0x7ffff80f43a0) at kernel/qapplication.cpp:3752
#20 0x00007f5be9c09dd0 in QApplication::notify(QObject*, QEvent*) (this=0x7ffff80f4ff0, receiver=0x55a61060db00, e=0x7ffff80f43a0) at kernel/qapplication.cpp:3499
#21 0x00007f5be8439328 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x55a61060db00, event=0x7ffff80f43a0) at kernel/qcoreapplication.cpp:1061
#22 0x00007f5be84394fe in QCoreApplication::sendEvent(QObject*, QEvent*) (receiver=receiver@entry=0x55a61060db00, event=event@entry=0x7ffff80f43a0) at kernel/qcoreapplication.cpp:1451
#23 0x00007f5be9c088d1 in QApplicationPrivate::dispatchEnterLeave(QWidget*, QWidget*, QPointF const&) (enter=0x55a610699be0, leave=<optimized out>, globalPosF=...) at kernel/qapplication.cpp:2328
#24 0x00007f5be9c09786 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool, bool) (receiver=receiver@entry=0x55a610699be0, event=event@entry=0x7ffff80f4630, alienWidget=0x55a610699be0, nativeWidget=0x55a60cc32190, buttonDown=buttonDown@entry=0x7f5bea3038b0 <qt_button_down>, lastMouseReceiver=..., spontaneous=true, onlyDispatchEnterLeave=false) at kernel/qapplication.cpp:2676
#25 0x00007f5be9c5da80 in QWidgetWindow::handleMouseEvent(QMouseEvent*) (this=this@entry=0x55a60cdd4a90, event=event@entry=0x7ffff80f4ac0) at kernel/qwidgetwindow.cpp:661
#26 0x00007f5be9c6034a in QWidgetWindow::event(QEvent*) (this=0x55a60cdd4a90, event=0x7ffff80f4ac0) at kernel/qwidgetwindow.cpp:281
#27 0x00007f5be9c0283c in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x55a60c3efe80, receiver=receiver@entry=0x55a60cdd4a90, e=e@entry=0x7ffff80f4ac0) at kernel/qapplication.cpp:3752
#28 0x00007f5be9c09dd0 in QApplication::notify(QObject*, QEvent*) (this=0x7ffff80f4ff0, receiver=0x55a60cdd4a90, e=0x7ffff80f4ac0) at kernel/qapplication.cpp:3499
#29 0x00007f5be8439328 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x55a60cdd4a90, event=0x7ffff80f4ac0) at kernel/qcoreapplication.cpp:1061
#30 0x00007f5be843950e in QCoreApplication::sendSpontaneousEvent(QObject*, QEvent*) (receiver=receiver@entry=0x55a60cdd4a90, event=event@entry=0x7ffff80f4ac0) at kernel/qcoreapplication.cpp:1463
#31 0x00007f5be8ee552b in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) (e=0x55a617788770) at kernel/qguiapplication.cpp:2102
#32 0x00007f5be8ee6695 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) (e=e@entry=0x55a617788770) at kernel/qguiapplication.cpp:1837
#33 0x00007f5be8ebf14b in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) (flags=...) at kernel/qwindowsysteminterface.cpp:1068
#34 0x00007f5bb9980e60 in userEventSourceDispatch(_GSource*, int (*)(void*), void*) () at /usr/lib/x86_64-linux-gnu/libQt5WaylandClient.so.5
#35 0x00007f5bde6ed387 in g_main_context_dispatch () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#36 0x00007f5bde6ed5c0 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#37 0x00007f5bde6ed64c in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#38 0x00007f5be849613f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x55a60c4f1ce0, flags=...) at kernel/qeventdispatcher_glib.cpp:422
#39 0x00007f5be843764a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffff80f4e60, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#40 0x00007f5be8440800 in QCoreApplication::exec() () at kernel/qcoreapplication.cpp:1364
#41 0x000055a60ac59190 in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at ./app/main.cpp:849
[Inferior 1 (process 32177) detached]

Reported using DrKonqi
Comment 1 Sven Brauch 2019-03-12 18:24:50 UTC
I think this is a Qt bug ...

Random guess: Try turning off Settings -> Editor -> Appearance -> Borders -> Show text preview on scrollbar. Does that help?
Comment 2 frmdstryr 2019-03-12 18:30:59 UTC
Thank you, will try this and update later today.
Comment 3 Friedrich W. H. Kossebau 2019-03-12 18:41:06 UTC
Could you install the debug symbols for KF5' KTextEditor as well, if they aren't yet?

Would be also interesting to see what calls exactly here done here:
#14 0x00007f5be4a14211 in  () at /usr/lib/x86_64-linux-gnu/libKF5TextEditor.so.5
#15 0x00007f5be4a039c1 in  () at /usr/lib/x86_64-linux-gnu/libKF5TextEditor.so.5
Comment 4 frmdstryr 2019-03-12 20:34:05 UTC
Created attachment 118756 [details]
New crash information added by DrKonqi

kdevelop (5.3.2) using Qt 5.12.0

- What I was doing when the application crashed:

@Sven Brauch, disabling the setting appears to work.  Thank you very much!

@Friedrich W. H. Kossebau, added the dbgsym

-- Backtrace (Reduced):
#6  0x0000000000000000 in  ()
#7  0x00007f298d9506a4 in QWindowPrivate::setVisible(bool) (this=0x556100ef6d10, visible=visible@entry=false) at kernel/qwindow.cpp:402
#8  0x00007f298e6bbd6d in QWidgetWindow::setNativeWindowVisibility(bool) (this=this@entry=0x556111543290, visible=visible@entry=false) at kernel/qwidgetwindow.cpp:205
#9  0x00007f298e69654f in QWidgetPrivate::hide_sys() (this=this@entry=0x5561111eab70) at kernel/qwidget.cpp:8227
#10 0x00007f298e69d900 in QWidgetPrivate::hide_helper() (this=this@entry=0x5561111eab70) at kernel/qwidget.cpp:8155
Comment 5 Sven Brauch 2019-03-12 20:39:13 UTC
I'll move this to ktexteditor, then. It's either a bug there or in Qt.
Comment 6 frmdstryr 2019-03-12 21:02:57 UTC
Created attachment 118757 [details]
New crash information added by DrKonqi

kwrite (18.12.3) using Qt 5.12.0

- What I was doing when the application crashed:

Thanks. I can reproduce it with KWrite.

From looking at the code it looks like there should be a null check in https://github.com/mgerstner/ktexteditor/blob/5a90cee2f73ab80a41220b3dbc67cbe4f0db8d49/src/view/kateviewhelpers.cpp#L466

before

 delete m_textPreview;

This occurs when moving my mouse to another window (one screen to another) in which both the scrollbar leaveEvent and the window deactivated eventFilter will trigger in https://github.com/mgerstner/ktexteditor/blob/5a90cee2f73ab80a41220b3dbc67cbe4f0db8d49/src/view/kateviewhelpers.cpp#L357-L372

-- Backtrace (Reduced):
#7  0x00007fdfa35556a4 in QWindowPrivate::setVisible (this=0x55c3f9b63720, visible=visible@entry=false) at kernel/qwindow.cpp:402
#8  0x00007fdfa3dd1d6d in QWidgetWindow::setNativeWindowVisibility (this=this@entry=0x55c3fa498830, visible=visible@entry=false) at kernel/qwidgetwindow.cpp:205
#9  0x00007fdfa3dac54f in QWidgetPrivate::hide_sys (this=this@entry=0x55c3fa42d640) at kernel/qwidget.cpp:8227
#10 0x00007fdfa3db3900 in QWidgetPrivate::hide_helper (this=this@entry=0x55c3fa42d640) at kernel/qwidget.cpp:8155
#11 0x00007fdfa3db85a0 in QWidget::setVisible (this=0x55c3fa3131e0, visible=<optimized out>) at kernel/qwidget.cpp:8357
Comment 7 frmdstryr 2019-03-12 21:05:03 UTC
Also it seems to only occur (on my system) when highlighting is enabled. I guess it takes longer to render or something.
Comment 8 Sven Brauch 2019-03-12 21:15:56 UTC
Hm, delete on a null pointer is safe though. And the text preview has been in for quite a while now, the issue must be a bit more subtle ...
Comment 9 Christoph Cullmann 2019-07-13 19:54:38 UTC
I tried this with current master + Qt 5.13 inside some nested wayland session.

Works for me.

The pointer is btw. even a QPointer to ensure it is really null if the widget dies.

I you can provide some way to reproduce or a new backtrace with more info we could try to take a look again, otherwise I don't know what to fix :(
Comment 10 frmdstryr 2019-07-26 17:42:16 UTC
I re-enabled the preview and have not had any of these for two weeks now so I think this can be closed. If it occurs again, I'll create a new issue.

Thanks!
Comment 11 Christoph Feck 2019-08-05 19:08:31 UTC
Thanks for the update; changing status.