dhaumann added inline comments.

INLINE COMMENTS

> kjob.cpp:105
>  
> +    if (isAutoDelete()) {
> +        deleteLater();

Alternatively to moving the code, you could also use a `QPointer<KJob> 
that(this);` to monitor whether the QObject is still existing. Then, you'd have 
to call

  if (that && isAutoDelete()) {...}

What I wonder is if calling deleteLater() earlier, would it be possible to 
somehow change order of execution?
Reasoning: deleteLater() goes through the event queue, but the signals & slots 
as well go through the event queue in case of threaded execution or when using 
Qt::QueuedConnection. So this possibly changes the order of events.

Someone who knows the code and how this internally is processed definitely 
needs to have a look at this :-)

REPOSITORY
  R244 KCoreAddons

REVISION DETAIL
  https://phabricator.kde.org/D19170

To: hallas, #frameworks, elvisangelaccio
Cc: dhaumann, kde-frameworks-devel, michaelh, ngraham, bruns

Reply via email to