| Summary: | KDevelop SIGSEGV when applying filters to project directories while project is still being parsed | ||
|---|---|---|---|
| Product: | [Applications] kdevelop | Reporter: | eric.parker |
| Component: | general | Assignee: | kdevelop-bugs-null |
| Status: | RESOLVED DUPLICATE | ||
| Severity: | minor | ||
| Priority: | NOR | ||
| Version First Reported In: | 5.1.1 | ||
| Target Milestone: | --- | ||
| Platform: | Fedora RPMs | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
| Attachments: | backtrace of KDevelop after SIGSEGV | ||
Pasting backtrace of crashing thread inline for SEO:
Thread 1 (Thread 0x7fffd84ad640 (LWP 14368)):
#0 KDevelop::Path::Path (this=0x7fffffffd360, other=..., child=...) at /usr/src/debug/kdevplatform-5.1.1/util/path.cpp:130
#1 0x00007fffee527c63 in KDevelop::ProjectBaseItem::path (this=this@entry=0x555557141c40) at /usr/src/debug/kdevplatform-5.1.1/project/projectmodel.cpp:452
#2 0x00007fffee54752e in KDevelop::FileManagerListJob::startNextJob (this=0x555556d5aa00) at /usr/src/debug/kdevplatform-5.1.1/project/filemanagerlistjob.cpp:87
#3 0x00007ffff230c7e9 in QObject::event (this=0x555556d5aa00, e=<optimized out>) at kernel/qobject.cpp:1263
#4 0x00007ffff2b24ecc in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x555556d5aa00, e=0x5555580ccce0) at kernel/qapplication.cpp:3799
#5 0x00007ffff2b2c671 in QApplication::notify (this=0x7fffffffdad0, receiver=0x555556d5aa00, e=0x5555580ccce0) at kernel/qapplication.cpp:3556
#6 0x00007ffff22e46fa in QCoreApplication::notifyInternal2 (receiver=0x555556d5aa00, event=event@entry=0x5555580ccce0) at kernel/qcoreapplication.cpp:988
#7 0x00007ffff22e6de0 in QCoreApplication::sendEvent (event=0x5555580ccce0, receiver=<optimized out>) at kernel/qcoreapplication.h:231
#8 QCoreApplicationPrivate::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x555555789290) at kernel/qcoreapplication.cpp:1649
#9 0x00007ffff22e72b8 in QCoreApplication::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0) at kernel/qcoreapplication.cpp:1503
#10 0x00007ffff2332653 in postEventSourceDispatch (s=0x5555558dbe10) at kernel/qeventdispatcher_glib.cpp:276
#11 0x00007fffe4d38e52 in g_main_dispatch (context=0x7fffc80016f0) at gmain.c:3203
#12 g_main_context_dispatch (context=context@entry=0x7fffc80016f0) at gmain.c:3856
#13 0x00007fffe4d391d0 in g_main_context_iterate (context=context@entry=0x7fffc80016f0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3929
#14 0x00007fffe4d3927c in g_main_context_iteration (context=0x7fffc80016f0, may_block=may_block@entry=1) at gmain.c:3990
#15 0x00007ffff23326cf in QEventDispatcherGlib::processEvents (this=0x5555559399a0, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#16 0x00007ffff22e368a in QEventLoop::exec (this=this@entry=0x7fffffffd8e0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:212
#17 0x00007ffff22eb18c in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1261
#18 0x000055555555faf0 in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/kdevelop-5.1.1/app/main.cpp:763
Thread 1 (Thread 0x7fffd84ad640 (LWP 14368)):
#0 KDevelop::Path::Path (this=0x7fffffffd360, other=..., child=...) at /usr/src/debug/kdevplatform-5.1.1/util/path.cpp:130
No locals.
#1 0x00007fffee527c63 in KDevelop::ProjectBaseItem::path (this=this@entry=0x555557141c40) at /usr/src/debug/kdevplatform-5.1.1/project/projectmodel.cpp:452
No locals.
#2 0x00007fffee54752e in KDevelop::FileManagerListJob::startNextJob (this=0x555556d5aa00) at /usr/src/debug/kdevplatform-5.1.1/project/filemanagerlistjob.cpp:87
this = 0x555556d5aa00
#3 0x00007ffff230c7e9 in QObject::event (this=0x555556d5aa00, e=<optimized out>) at kernel/qobject.cpp:1263
mce = <optimized out>
sw = {receiver = 0x555556d5aa00, previousSender = 0x0, currentSender = {sender = 0x555556d5aa00, signal = 23, ref = 1}, switched = true}
#4 0x00007ffff2b24ecc in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x555556d5aa00, e=0x5555580ccce0) at kernel/qapplication.cpp:3799
consumed = <optimized out>
this = <optimized out>
e = 0x5555580ccce0
receiver = 0x555556d5aa00
#5 0x00007ffff2b2c671 in QApplication::notify (this=0x7fffffffdad0, receiver=0x555556d5aa00, e=0x5555580ccce0) at kernel/qapplication.cpp:3556
w = 0x555556d5aa00
extra = <optimized out>
isProxyWidget = <optimized out>
res = false
#6 0x00007ffff22e46fa in QCoreApplication::notifyInternal2 (receiver=0x555556d5aa00, event=event@entry=0x5555580ccce0) at kernel/qcoreapplication.cpp:988
selfRequired = true
result = false
cbdata = {0x555556d5aa00, 0x5555580ccce0, 0x7fffffffd5ef}
d = <optimized out>
threadData = 0x555555789290
scopeLevelCounter = {threadData = 0x555555789290}
#7 0x00007ffff22e6de0 in QCoreApplication::sendEvent (event=0x5555580ccce0, receiver=<optimized out>) at kernel/qcoreapplication.h:231
No locals.
#8 QCoreApplicationPrivate::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x555555789290) at kernel/qcoreapplication.cpp:1649
e = 0x5555580ccce0
pe = <optimized out>
r = <optimized out>
unlocker = {m = <synthetic pointer><error reading variable>}
event_deleter = {d = 0x5555580ccce0}
locker = {val = 93824994546368}
startOffset = 0
i = @0x5555557892b4: 13
cleanup = {receiver = 0x0, event_type = 0, data = 0x555555789290, exceptionCaught = true}
#9 0x00007ffff22e72b8 in QCoreApplication::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0) at kernel/qcoreapplication.cpp:1503
data = <optimized out>
#10 0x00007ffff2332653 in postEventSourceDispatch (s=0x5555558dbe10) at kernel/qeventdispatcher_glib.cpp:276
source = 0x5555558dbe10
#11 0x00007fffe4d38e52 in g_main_dispatch (context=0x7fffc80016f0) at gmain.c:3203
dispatch = 0x7ffff2332640 <postEventSourceDispatch(GSource*, GSourceFunc, gpointer)>
prev_source = 0x0
was_in_call = 0
user_data = 0x0
callback = 0x0
cb_funcs = 0x0
cb_data = 0x0
need_destroy = <optimized out>
source = 0x5555558dbe10
current = 0x55555581f490
i = 0
#12 g_main_context_dispatch (context=context@entry=0x7fffc80016f0) at gmain.c:3856
No locals.
#13 0x00007fffe4d391d0 in g_main_context_iterate (context=context@entry=0x7fffc80016f0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3929
max_priority = 0
timeout = 0
some_ready = 1
nfds = 10
allocated_nfds = 14
fds = <optimized out>
#14 0x00007fffe4d3927c in g_main_context_iteration (context=0x7fffc80016f0, may_block=may_block@entry=1) at gmain.c:3990
retval = <optimized out>
#15 0x00007ffff23326cf in QEventDispatcherGlib::processEvents (this=0x5555559399a0, flags=...) at kernel/qeventdispatcher_glib.cpp:423
d = 0x5555558fb6e0
canWait = true
savedFlags = {i = 0}
result = <optimized out>
#16 0x00007ffff22e368a in QEventLoop::exec (this=this@entry=0x7fffffffd8e0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:212
d = 0x5555563ed3d0
locker = {val = 93824994546592}
ref = {d = 0x5555563ed3d0, locker = @0x7fffffffd860, exceptionCaught = true}
#17 0x00007ffff22eb18c in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1261
threadData = 0x555555789290
eventLoop = {<QObject> = {_vptr.QObject = 0x7ffff25209f8 <vtable for QEventLoop+16>, static staticMetaObject = {d = {superdata = 0x0, stringdata = 0x7ffff24433e0 <qt_meta_stringdata_QObject>, data = 0x7ffff24432c0 <qt_meta_data_QObject>, static_metacall = 0x7ffff23135d0 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, d_ptr = {d = 0x5555563ed3d0}, static staticQtMetaObject = {d = {superdata = 0x0, stringdata = 0x7ffff248b180 <qt_meta_stringdata_Qt>, data = 0x7ffff24886c0 <qt_meta_data_Qt>, static_metacall = 0x0, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = 0x7ffff2517ec0 <QObject::staticMetaObject>, stringdata = 0x7ffff24a2520 <qt_meta_stringdata_QEventLoop>, data = 0x7ffff24a24c0 <qt_meta_data_QEventLoop>, static_metacall = 0x7ffff237af70 <QEventLoop::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}}
returnCode = <optimized out>
#18 0x000055555555faf0 in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/kdevelop-5.1.1/app/main.cpp:763
timer = {t1 = -9223372036854775808, t2 = -9223372036854775808}
debugArgs = {<QList<QString>> = {<QListSpecialMethods<QString>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, <No data fields>}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7ffff239f2e0 <QListData::shared_null>}, d = 0x7ffff239f2e0 <QListData::shared_null>}}, <No data fields>}
debugeeName = {static null = {<No data fields>}, d = 0x7ffff239e2a0 <QArrayData::shared_null>}
app = {<QApplication> = {<QGuiApplication> = {<QCoreApplication> = {<QObject> = {_vptr.QObject = 0x5555557674b8 <vtable for KDevelopApplication+16>, static staticMetaObject = {d = {superdata = 0x0, stringdata = 0x7ffff24433e0 <qt_meta_stringdata_QObject>, data = 0x7ffff24432c0 <qt_meta_data_QObject>, static_metacall = 0x7ffff23135d0 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, d_ptr = {d = 0x55555578d460}, static staticQtMetaObject = {d = {superdata = 0x0, stringdata = 0x7ffff248b180 <qt_meta_stringdata_Qt>, data = 0x7ffff24886c0 <qt_meta_data_Qt>, static_metacall = 0x0, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = 0x7ffff2517ec0 <QObject::staticMetaObject>, stringdata = 0x7ffff24a26e0 <qt_meta_stringdata_QCoreApplication>, data = 0x7ffff24a25c0 <qt_meta_data_QCoreApplication>, static_metacall = 0x7ffff237b0f0 <QCoreApplication::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, static self = 0x7fffffffdad0}, static staticMetaObject = {d = {superdata = 0x7ffff2520b40 <QCoreApplication::staticMetaObject>, stringdata = 0x7ffff28ffc20 <qt_meta_stringdata_QGuiApplication>, data = 0x7ffff28ff9e0 <qt_meta_data_QGuiApplication>, static_metacall = 0x7ffff261cf70 <QGuiApplication::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = 0x7ffff29b5540 <QGuiApplication::staticMetaObject>, stringdata = 0x7ffff2eb61c0 <qt_meta_stringdata_QApplication>, data = 0x7ffff2eb6040 <qt_meta_data_QApplication>, static_metacall = 0x7ffff2b29cf0 <QApplication::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}}, <No data fields>}
description = "The KDevelop Integrated Development Environment"
aboutData = {d = 0x555555894840}
migrator = {d = 0x5555558ec0b0}
parser = {d = 0x5555558e81d0}
initialFiles = {d = 0x7ffff239e2a0 <QArrayData::shared_null>}
availableSessionInfos = {d = 0x55555590ae50}
session = {static null = {<No data fields>}, d = 0x7ffff239e2a0 <QArrayData::shared_null>}
nRunningSessions = <optimized out>
core = 0x5555558b2490
projectNames = {<QList<QString>> = {<QListSpecialMethods<QString>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, <No data fields>}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7ffff239f2e0 <QListData::shared_null>}, d = 0x7ffff239f2e0 <QListData::shared_null>}}, <No data fields>}
*** This bug has been marked as a duplicate of bug 355241 *** |
Created attachment 107139 [details] backtrace of KDevelop after SIGSEGV Imported a large project and while it was still parsing started to filter out directories I did not need and hit the same SIGSEGV twice in a row (see attached backtrace). On the third try I did not filter any directories and nothing went wrong. Steps: 1. Import large project 2. Exclude / filter directories from project. The GDB log does not include the SIGSEGV but it was on thread 1 at /usr/src/debug/kdevplatform-5.1.1/util/path.cpp:130.