KZoneAllocator static in KCompletion crashes on exit
Kevin Funk
kfunk at kde.org
Mon Feb 10 11:14:31 GMT 2014
Am Montag, 10. Februar 2014, 01:28:03 schrieb Thomas Lübking:
> On Sonntag, 9. Februar 2014 22:16:16 CEST, Albert Astals Cid wrote:
> > So while exiting krecipes i get
> >
> > ==15297== Invalid read of size 8
> > ==15297== at 0xABE051C: QString::vsprintf(char const*,
> > __va_list_tag*) (in
> > /usr/lib/x86_64-linux-gnu/libQtCore.so.4.8.6)
> > ==15297== by 0xAB87F94: qt_message(QtMsgType, char const*,
> > __va_list_tag*) (in
> > /usr/lib/x86_64-linux-gnu/libQtCore.so.4.8.6)
> > ==15297== by 0xAB88190: qDebug(char const*, ...) (in
> > /usr/lib/x86_64-linux-gnu/libQtCore.so.4.8.6)
> > ==15297== by 0xA59AC14: KZoneAllocator::~KZoneAllocator()
> > (kallocator.cpp:110)
>
> https://git.reviewboard.kde.org/r/114715/ ?
>
> Cheers,
> Thomas
Hey Albert,
(Actually I replied much earlier, but KMail refused to send the mail somehow)
It's interesting that you can reproduce this on a Linux system, I never got
that far.
What version of kdelibs are you running? This particular issue should indeed
be fixed in v4.12.2 and KF5. The KZoneAllocator instance in KCompTreeNode got
turned into 'static QSharedPointer<KZoneAllocator> alloc' member and
KCompTreeNode instances are now keeping strong-refs to it to avoid the
allocator (along its provided memory pool) being deleted too early.
I also replaced the qDebug usage with printfs because I got similar crashes at
shutdown.
Greets
--
Kevin Funk
More information about the kde-core-devel
mailing list