Missing KCompletionMatches copy operator
Christian Ehrlicher
Ch.Ehrlicher at gmx.de
Mon Dec 3 16:53:36 GMT 2007
Kevin Krammer schrieb:
> On Sunday 02 December 2007, Andreas Pakulat wrote:
>> On 02.12.07 22:26:14, Christian Ehrlicher wrote:
>>> Hi,
>>>
>>> due to a missing copy operator I get a crash (on windows) when konqueror
>>> tries to display historyPopupCompletionItems.
>>> It happens because msvc (don't know if/how this works with gcc) creates
>>> a default copy ctor which does not copy the d-ptr correctly -> double
>>> free d-ptr -> crash.
>>>
>>> Afaics therer are also other classes which have d-ptr but no copy ctor
>>> (at least KCompletionBase and KCompletion).
>> KCompletion can't be copied (its a QObject subclass) and as far as I can
>> see KCompletionBase is not used as value type thus no need for a copy
>> constructor or assignment operator.
>
> I'd say whenever a class has a pointer member, it should either have
> Q_DISABLE_COPY or copy constructor and assignment operator.
>
I found some more where the copy ctor/Q_DISABLE_COPY seems missing:
kdeui/util/kwordwrap.h
kdeui/util/kxerrorhandler.h
kdecore/compression/kfilterbase.h
kdecore/date/*.h
kdecore/localization/kcharsets.h ?
kwallet/backend/kwalletbackend.h
But I don't know how a krazy check can find this problems.
Christian
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 250 bytes
Desc: OpenPGP digital signature
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20071203/69741ac0/attachment.sig>
More information about the kde-core-devel
mailing list