[Lazarus] EAccessViolation exception on exit qt5 project in Kubuntu 19.10

Florian Klämpfl florian at freepascal.org
Tue Apr 14 20:24:55 CEST 2020


Am 14.04.20 um 18:47 schrieb zeljko:
> On 4/14/20 6:28 PM, Florian Klämpfl via lazarus wrote:
>> Am 14.04.20 um 12:55 schrieb zeljko via lazarus:
>>> On 4/13/20 7:43 PM, Luca Olivetti via lazarus wrote:
>>>
>>>> Now I tried installing the packaged libqt5pas and still see no 
>>>> segfault.
>>>> Note that this isn't a fresh install, I dist-upgraded it (or better 
>>>> do-release-upgraded it) many times, but I don't think that should 
>>>> matter.
>>>
>>> IMO, fpc version is important. fpc-3.0.4 from distro crashes, 
>>
>> Does anybody have a stack dump of the crash? Maybe it's related to the 
>> stack alignment issues which are fixed in 3.2+?
> 
> This is crash dump - Fedora 30 64bit , fpc-3.0.4, Qt5 lcl.
> 
> Thread 1 "lazarus" received signal SIGSEGV, Segmentation fault.

Sorry, I were not precise enough. Can you also post a disassembly of the 
swap procedure at 0x00007ffff666c7f1?

> 0x00007ffff666c7f1 in std::swap<QPostEvent> (__b=..., __a=...) at 
> /usr/include/c++/9/bits/move.h:182
> warning: Source file is more recent than executable.
> 182         swap(_Tp& __a, _Tp& __b)
> (gdb) bt
> #0  0x00007ffff666c7f1 in std::swap<QPostEvent> (__b=..., __a=...) at 
> /usr/include/c++/9/bits/move.h:182
> #1  qSwap<QPostEvent> (value2=..., value1=...) at 
> ../../include/QtCore/../../src/corelib/global/qglobal.h:915
> #2  QCoreApplication::removePostedEvents (receiver=0x3e702c0, 
> eventType=0) at kernel/qcoreapplication.cpp:1883
> #3  0x00007ffff669489e in QObjectPrivate::~QObjectPrivate 
> (this=0x3c8e4e0, __in_chrg=<optimized out>) at kernel/qobject.cpp:258
> #4  0x00007fffe65993a0 in 
> QDBusAbstractInterfacePrivate::~QDBusAbstractInterfacePrivate 
> (this=0x3c8e4e0, __in_chrg=<optimized out>)
>      at /usr/include/c++/9/bits/atomic_base.h:326
> #5  QDBusAbstractInterfacePrivate::~QDBusAbstractInterfacePrivate 
> (this=0x3c8e4e0, __in_chrg=<optimized out>) at 
> qdbusabstractinterface_p.h:88
> #6  0x00007ffff669bcd7 in QScopedPointerDeleter<QObjectData>::cleanup 
> (pointer=<optimized out>) at 
> ../../include/QtCore/../../src/corelib/tools/qscopedpointer.h:52
> #7  QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> 
>  >::~QScopedPointer (this=0x3e702c8, __in_chrg=<optimized out>)
>      at ../../include/QtCore/../../src/corelib/tools/qscopedpointer.h:107
> #8  QObject::~QObject (this=<optimized out>, __in_chrg=<optimized out>) 
> at kernel/qobject.cpp:891
> #9  0x00007fffe569752d in 
> OrgKdeKDirNotifyInterface::~OrgKdeKDirNotifyInterface (this=0x3e702c0, 
> __in_chrg=<optimized out>)
>      at 
> /usr/src/debug/kf5-kio-5.68.0-1.fc30.x86_64/src/core/kdirnotify.cpp:34
> #10 0x00007ffff669ad3c in QObjectPrivate::deleteChildren 
> (this=this at entry=0x3ecf5f0) at kernel/qobject.cpp:2016
> #11 0x00007ffff669bc8f in QObject::~QObject (this=<optimized out>, 
> __in_chrg=<optimized out>) at kernel/qobject.cpp:1032
> #12 0x00007fffe56b8ffe in KCoreDirListerCache::~KCoreDirListerCache 
> (this=0x7fffe5728500 <(anonymous 
> namespace)::Q_QGS_kDirListerCache::innerFunction()::holder>,
>      __in_chrg=<optimized out>) at 
> /usr/include/c++/9/bits/atomic_base.h:326
> #13 0x00007fffe56b947d in (anonymous 
> namespace)::Q_QGS_kDirListerCache::Holder::~Holder (this=<optimized 
> out>, __in_chrg=<optimized out>)
>      at 
> /usr/src/debug/kf5-kio-5.68.0-1.fc30.x86_64/src/core/kcoredirlister.cpp:54
> #14 0x00007ffff7778680 in __run_exit_handlers () from /lib64/libc.so.6
> #15 0x00007ffff77787c0 in exit () from /lib64/libc.so.6
> #16 0x00007ffff7761f4a in __libc_start_main () from /lib64/libc.so.6
> #17 0x00007fffffffdcf0 in ?? ()
> #18 0x0000000000000000 in ?? ()
> 



More information about the lazarus mailing list