Bug 398822 - Segfault when folders are added with a cmake option in cmakepreferences
Summary: Segfault when folders are added with a cmake option in cmakepreferences
Status: RESOLVED FIXED
Alias: None
Product: kdevelop
Classification: Applications
Component: Build tools: CMake (show other bugs)
Version: git master
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: kdevelop-bugs-null
URL:
Keywords: drkonqi
: 394424 (view as bug list)
Depends on:
Blocks:
 
Reported: 2018-09-18 21:38 UTC by Mathias Kraus
Modified: 2019-02-07 22:03 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Mathias Kraus 2018-09-18 21:38:31 UTC
Application: kdevelop (5.3.40)
 (Compiled from sources)
Qt Version: 5.11.1
Frameworks Version: 5.50.0
Operating System: Linux 4.15.0-33-generic x86_64
Distribution: KDE neon User Edition 5.13

-- Information about the crash:
- What I was doing when the application crashed:
1. Project -> Prune Selection
2. Project -> Configure Selection
3. Project -> Open Configuration...
4. Enable custon "test" cmake option
5. Click on OK -> segfault

I used this CMakeLists.txt
==================
cmake_minimum_required(VERSION 3.5)
project(crash)

option(test "build tests" OFF)

add_library(crash
    source/lib.cpp
)

if(test)
    add_executable(unittest test/test.cpp)
    target_link_libraries(unittest PRIVATE crash pthread)
endif(test)
==================

source/lib.cpp
==================
int add(int a, int b) {
    return a + b;
}
==================

test/test.cpp
==================
int main() {
    return 0;
}
==================

It seems some ProjectFolderItems are created and added to the queue in FileManagerListJob. Then all ProjectFolderItem are deleted and when the next FileManagerListJob::startNextJob() accesses an element in the queue it's a dangling pointer and segfaults.
I could track the issue to AbstractFileManagerPlugin::import. The KDirWatch item is still connected to the project path. When CMakePreferences::configure() triggers a reload, the KDirWatch triggers FileManagerListJob::startNextJob() but the ProjectFolderItems are also deleted.

I could fix the problem by diconnecting all slots from KDirWatch for the given project, they are connected anyway when reloadModel triggers an import.
I did this from CMakePreferences::configure() through the varius abstraction layers up to AbstractFileManagerPlugin. Don't know if this is a viable solution. Someone with more insight has to make a proper fix.

The crash can be reproduced every time.

-- 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 0x7f8dce29f840 (LWP 17240))]

Thread 22 (Thread 0x7f8d1ffff700 (LWP 17342)):
#0  0x00007f8dc368a9f3 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x56530160aac4) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x56530160aa70, cond=0x56530160aa98) at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x56530160aa98, mutex=0x56530160aa70) at pthread_cond_wait.c:655
#3  0x00007f8dcafd291b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f8dc1287a65 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#5  0x00007f8dc128bb38 in ?? () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#6  0x00007f8dc1286c8d in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#7  0x00007f8dc12899fb in ThreadWeaver::Thread::run() () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#8  0x00007f8dcafd1aab in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#9  0x00007f8dc36846db in start_thread (arg=0x7f8d1ffff700) at pthread_create.c:463
#10 0x00007f8dca8c488f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 21 (Thread 0x7f8d40ff9700 (LWP 17341)):
#0  0x00007f8dc368a9f3 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x56530160aac4) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x56530160aa70, cond=0x56530160aa98) at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x56530160aa98, mutex=0x56530160aa70) at pthread_cond_wait.c:655
#3  0x00007f8dcafd291b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f8dc1287a65 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#5  0x00007f8dc128bb38 in ?? () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#6  0x00007f8dc1286c8d in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#7  0x00007f8dc128bb92 in ?? () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#8  0x00007f8dc1286c8d in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#9  0x00007f8dc12899fb in ThreadWeaver::Thread::run() () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#10 0x00007f8dcafd1aab in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#11 0x00007f8dc36846db in start_thread (arg=0x7f8d40ff9700) at pthread_create.c:463
#12 0x00007f8dca8c488f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 20 (Thread 0x7f8d417fa700 (LWP 17340)):
#0  0x00007f8dc368a9f3 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x56530160aac4) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x56530160aa70, cond=0x56530160aa98) at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x56530160aa98, mutex=0x56530160aa70) at pthread_cond_wait.c:655
#3  0x00007f8dcafd291b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f8dc1287a65 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#5  0x00007f8dc128bb38 in ?? () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#6  0x00007f8dc1286c8d in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#7  0x00007f8dc128bb92 in ?? () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#8  0x00007f8dc1286c8d in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#9  0x00007f8dc12899fb in ThreadWeaver::Thread::run() () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#10 0x00007f8dcafd1aab in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#11 0x00007f8dc36846db in start_thread (arg=0x7f8d417fa700) at pthread_create.c:463
#12 0x00007f8dca8c488f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 19 (Thread 0x7f8d41ffb700 (LWP 17339)):
#0  0x00007f8dc368a9f3 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x56530160aac4) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x56530160aa70, cond=0x56530160aa98) at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x56530160aa98, mutex=0x56530160aa70) at pthread_cond_wait.c:655
#3  0x00007f8dcafd291b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f8dc1287a65 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#5  0x00007f8dc128bb38 in ?? () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#6  0x00007f8dc1286c8d in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#7  0x00007f8dc128bb92 in ?? () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#8  0x00007f8dc1286c8d in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#9  0x00007f8dc128bb92 in ?? () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#10 0x00007f8dc1286c8d in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#11 0x00007f8dc12899fb in ThreadWeaver::Thread::run() () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#12 0x00007f8dcafd1aab in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#13 0x00007f8dc36846db in start_thread (arg=0x7f8d41ffb700) at pthread_create.c:463
#14 0x00007f8dca8c488f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 18 (Thread 0x7f8d427fc700 (LWP 17337)):
#0  0x00007f8dc368a9f3 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x56530160aac4) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x56530160aa70, cond=0x56530160aa98) at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x56530160aa98, mutex=0x56530160aa70) at pthread_cond_wait.c:655
#3  0x00007f8dcafd291b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f8dc1287a65 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#5  0x00007f8dc128bb38 in ?? () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#6  0x00007f8dc1286c8d in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#7  0x00007f8dc12899fb in ThreadWeaver::Thread::run() () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#8  0x00007f8dcafd1aab in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#9  0x00007f8dc36846db in start_thread (arg=0x7f8d427fc700) at pthread_create.c:463
#10 0x00007f8dca8c488f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 17 (Thread 0x7f8d437fe700 (LWP 17332)):
#0  0x00007f8dc368a9f3 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x565303632b10) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x565303632ac0, cond=0x565303632ae8) at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x565303632ae8, mutex=0x565303632ac0) at pthread_cond_wait.c:655
#3  0x00007f8dcafd291b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f8dc1287a65 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#5  0x00007f8dc128bb38 in ?? () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#6  0x00007f8dc1286c8d in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#7  0x00007f8dc12899fb in ThreadWeaver::Thread::run() () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#8  0x00007f8dcafd1aab in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#9  0x00007f8dc36846db in start_thread (arg=0x7f8d437fe700) at pthread_create.c:463
#10 0x00007f8dca8c488f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 16 (Thread 0x7f8d43fff700 (LWP 17331)):
#0  0x00007f8dc368a9f3 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x565303632b10) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x565303632ac0, cond=0x565303632ae8) at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x565303632ae8, mutex=0x565303632ac0) at pthread_cond_wait.c:655
#3  0x00007f8dcafd291b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f8dc1287a65 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#5  0x00007f8dc128bb38 in ?? () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#6  0x00007f8dc1286c8d in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#7  0x00007f8dc12899fb in ThreadWeaver::Thread::run() () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#8  0x00007f8dcafd1aab in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#9  0x00007f8dc36846db in start_thread (arg=0x7f8d43fff700) at pthread_create.c:463
#10 0x00007f8dca8c488f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 15 (Thread 0x7f8d58b89700 (LWP 17330)):
#0  0x00007f8dc368a9f3 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x565303632b10) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x565303632ac0, cond=0x565303632ae8) at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x565303632ae8, mutex=0x565303632ac0) at pthread_cond_wait.c:655
#3  0x00007f8dcafd291b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f8dc1287a65 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#5  0x00007f8dc128bb38 in ?? () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#6  0x00007f8dc1286c8d in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#7  0x00007f8dc12899fb in ThreadWeaver::Thread::run() () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#8  0x00007f8dcafd1aab in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#9  0x00007f8dc36846db in start_thread (arg=0x7f8d58b89700) at pthread_create.c:463
#10 0x00007f8dca8c488f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 14 (Thread 0x7f8d5938a700 (LWP 17329)):
#0  0x00007f8dc368a9f3 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x565303632b10) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x565303632ac0, cond=0x565303632ae8) at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x565303632ae8, mutex=0x565303632ac0) at pthread_cond_wait.c:655
#3  0x00007f8dcafd291b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f8dc1287a65 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#5  0x00007f8dc128bb38 in ?? () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#6  0x00007f8dc1286c8d in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#7  0x00007f8dc12899fb in ThreadWeaver::Thread::run() () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#8  0x00007f8dcafd1aab in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#9  0x00007f8dc36846db in start_thread (arg=0x7f8d5938a700) at pthread_create.c:463
#10 0x00007f8dca8c488f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 13 (Thread 0x7f8d59b8b700 (LWP 17328)):
#0  0x00007f8dc368a9f3 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x565303632b10) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x565303632ac0, cond=0x565303632ae8) at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x565303632ae8, mutex=0x565303632ac0) at pthread_cond_wait.c:655
#3  0x00007f8dcafd291b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f8dc1287a65 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#5  0x00007f8dc128bb38 in ?? () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#6  0x00007f8dc1286c8d in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#7  0x00007f8dc12899fb in ThreadWeaver::Thread::run() () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#8  0x00007f8dcafd1aab in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#9  0x00007f8dc36846db in start_thread (arg=0x7f8d59b8b700) at pthread_create.c:463
#10 0x00007f8dca8c488f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 12 (Thread 0x7f8d5a38c700 (LWP 17327)):
#0  0x00007f8dc368a9f3 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x565303632b10) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x565303632ac0, cond=0x565303632ae8) at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x565303632ae8, mutex=0x565303632ac0) at pthread_cond_wait.c:655
#3  0x00007f8dcafd291b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f8dc1287a65 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#5  0x00007f8dc128bb38 in ?? () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#6  0x00007f8dc1286c8d in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#7  0x00007f8dc12899fb in ThreadWeaver::Thread::run() () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#8  0x00007f8dcafd1aab in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#9  0x00007f8dc36846db in start_thread (arg=0x7f8d5a38c700) at pthread_create.c:463
#10 0x00007f8dca8c488f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 11 (Thread 0x7f8d5ab8d700 (LWP 17326)):
#0  0x00007f8dc368a9f3 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x565303632b10) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x565303632ac0, cond=0x565303632ae8) at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x565303632ae8, mutex=0x565303632ac0) at pthread_cond_wait.c:655
#3  0x00007f8dcafd291b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f8dc1287a65 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#5  0x00007f8dc128bb38 in ?? () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#6  0x00007f8dc1286c8d in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#7  0x00007f8dc12899fb in ThreadWeaver::Thread::run() () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#8  0x00007f8dcafd1aab in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#9  0x00007f8dc36846db in start_thread (arg=0x7f8d5ab8d700) at pthread_create.c:463
#10 0x00007f8dca8c488f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 10 (Thread 0x7f8d5b38e700 (LWP 17325)):
#0  0x00007f8dc368a9f3 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x565303632b10) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x565303632ac0, cond=0x565303632ae8) at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x565303632ae8, mutex=0x565303632ac0) at pthread_cond_wait.c:655
#3  0x00007f8dcafd291b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f8dc1287a65 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#5  0x00007f8dc128bb38 in ?? () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#6  0x00007f8dc1286c8d in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#7  0x00007f8dc12899fb in ThreadWeaver::Thread::run() () from /usr/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5
#8  0x00007f8dcafd1aab in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#9  0x00007f8dc36846db in start_thread (arg=0x7f8d5b38e700) at pthread_create.c:463
#10 0x00007f8dca8c488f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 9 (Thread 0x7f8d79e50700 (LWP 17274)):
#0  0x00007f8dca8b7bf9 in __GI___poll (fds=0x7f8d60004d70, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f8dc14e9439 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f8dc14e954c in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f8dcb1f7a9b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f8dcb19bdea in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f8dcafc6b8a in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f8dc96c0f48 in KDevelop::CompletionWorkerThread::run() () from /home/mathias/Programme/kdevelop_install/lib/x86_64-linux-gnu/libKDevPlatformLanguage.so.54
#7  0x00007f8dcafd1aab in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00007f8dc36846db in start_thread (arg=0x7f8d79e50700) at pthread_create.c:463
#9  0x00007f8dca8c488f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 8 (Thread 0x7f8d7a651700 (LWP 17265)):
#0  0x00007f8dca8b7bf9 in __GI___poll (fds=0x7f8d6c004990, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f8dc14e9439 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f8dc14e954c in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f8dcb1f7a9b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f8dcb19bdea in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f8dcafc6b8a in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f8dcafd1aab in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00007f8dc36846db in start_thread (arg=0x7f8d7a651700) at pthread_create.c:463
#8  0x00007f8dca8c488f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 7 (Thread 0x7f8d7b703700 (LWP 17261)):
#0  0x00007f8dca8b7bf9 in __GI___poll (fds=0x7f8d74004e10, nfds=1, timeout=10161) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f8dc14e9439 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f8dc14e954c in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f8dcb1f7a9b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f8dcb19bdea in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f8dcafc6b8a in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f8dcafd1aab in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00007f8dc36846db in start_thread (arg=0x7f8d7b703700) at pthread_create.c:463
#8  0x00007f8dca8c488f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 6 (Thread 0x7f8d8374a700 (LWP 17260)):
#0  0x00007f8dca8b30b4 in __GI___libc_read (fd=13, buf=0x7f8d83749b30, nbytes=16) at ../sysdeps/unix/sysv/linux/read.c:27
#1  0x00007f8dc152d980 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f8dc14e8f27 in g_main_context_check () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f8dc14e93e0 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f8dc14e954c in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007f8dcb1f7a9b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f8dcb19bdea in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00007f8dcafc6b8a in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00007f8dc3edc8b5 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#9  0x00007f8dcafd1aab in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#10 0x00007f8dc36846db in start_thread (arg=0x7f8d8374a700) at pthread_create.c:463
#11 0x00007f8dca8c488f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 5 (Thread 0x7f8d8493a700 (LWP 17259)):
#0  0x00007f8dc368a9f3 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x7f8d87fea110) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x565300e85170, cond=0x7f8d87fea0e8) at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x7f8d87fea0e8, mutex=0x565300e85170) at pthread_cond_wait.c:655
#3  0x00007f8dcac4c620 in std::condition_variable::wait(std::unique_lock<std::mutex>&) () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#4  0x00007f8d872fcf27 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5WebKit.so.5
#5  0x00007f8d872fd069 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5WebKit.so.5
#6  0x00007f8dcac52733 in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#7  0x00007f8dc36846db in start_thread (arg=0x7f8d8493a700) at pthread_create.c:463
#8  0x00007f8dca8c488f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 4 (Thread 0x7f8d90622700 (LWP 17258)):
#0  0x00007f8dca8b7bf9 in __GI___poll (fds=0x7f8d88004b80, nfds=1, timeout=60165) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f8dc14e9439 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f8dc14e954c in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f8dcb1f7a9b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f8dcb19bdea in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f8dcafc6b8a in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f8dc95b70db in KDevelop::DUChainPrivate::CleanupThread::run() () from /home/mathias/Programme/kdevelop_install/lib/x86_64-linux-gnu/libKDevPlatformLanguage.so.54
#7  0x00007f8dcafd1aab in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00007f8dc36846db in start_thread (arg=0x7f8d90622700) at pthread_create.c:463
#9  0x00007f8dca8c488f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7f8d99f23700 (LWP 17242)):
#0  0x00007f8dc14e636f in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#1  0x00007f8dc14e88d3 in g_main_context_prepare () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f8dc14e936b in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f8dc14e954c in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f8dcb1f7a9b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f8dcb19bdea in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f8dcafc6b8a in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00007f8dccd76e45 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5
#8  0x00007f8dcafd1aab in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#9  0x00007f8dc36846db in start_thread (arg=0x7f8d99f23700) at pthread_create.c:463
#10 0x00007f8dca8c488f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7f8da36f1700 (LWP 17241)):
#0  0x00007f8dca8b7bf9 in __GI___poll (fds=0x7f8da36f0c68, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f8db6508747 in ?? () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#2  0x00007f8db650a36a in xcb_wait_for_event () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#3  0x00007f8da5a0d129 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#4  0x00007f8dcafd1aab in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f8dc36846db in start_thread (arg=0x7f8da36f1700) at pthread_create.c:463
#6  0x00007f8dca8c488f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7f8dce29f840 (LWP 17240)):
[KCrash Handler]
#6  0x00007f8dcb04e670 in QString::indexOf(QChar, int, Qt::CaseSensitivity) const () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00007f8dcd8e7289 in KDevelop::Path::isLocalFile() const () from /home/mathias/Programme/kdevelop_install/lib/x86_64-linux-gnu/libKDevPlatformUtil.so.54
#8  0x00007f8dc90794b8 in KDevelop::FileManagerListJob::startNextJob() [clone .part.62] () from /home/mathias/Programme/kdevelop_install/lib/x86_64-linux-gnu/libKDevPlatformProject.so.54
#9  0x00007f8dcb1cd642 in QObject::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#10 0x00007f8dcbf2ae8c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#11 0x00007f8dcbf3245f in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#12 0x00007f8dcb19dab8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#13 0x00007f8dcb1a05fd in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#14 0x00007f8dcb1f8453 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#15 0x00007f8dc14e9287 in g_main_context_dispatch () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#16 0x00007f8dc14e94c0 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#17 0x00007f8dc14e954c in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#18 0x00007f8dcb1f7a7f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#19 0x00007f8da5a97ed1 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#20 0x00007f8dcb19bdea in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#21 0x00007f8dcb1a4fa0 in QCoreApplication::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#22 0x00005652ffb1d230 in main ()

The reporter indicates this bug may be a duplicate of or related to bug 397270.

Possible duplicates by query: bug 397270.

Reported using DrKonqi
Comment 1 Mathias Kraus 2018-09-29 18:05:57 UTC
*** Bug 394424 has been marked as a duplicate of this bug. ***
Comment 2 Mathias Kraus 2019-02-07 22:03:09 UTC
fixed with https://invent.kde.org/kde/kdevelop/merge_requests/4