<table><tr><td style="">mpyne added a comment.
</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; float: right; color: #464C5C; font-weight: bold; border-radius: 3px; background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); display: inline-block; border: 1px solid rgba(71,87,120,.2);" href="https://phabricator.kde.org/D10989">View Revision</a></tr></table><br /><div><div><p>I'm not sure the job could have been deleted before <tt style="background: #ebebeb; font-size: 13px;">KDialogJobUiDelegate::showErrorMessage()</tt> since much of the call stack before then involves making method calls on the job.  KDirLister::handleError(KIO::Job*) (kdirlister.cpp:81) makes a call to <tt style="background: #ebebeb; font-size: 13px;">job->error()</tt> right before calling <tt style="background: #ebebeb; font-size: 13px;">handleError</tt>, for instance.</p>

<p>Is it possible that the widget itself has been deleted early somehow?  Does the job run on a different event loop (due to threading or similar)?</p>

<p>I think valgrind has some flags you can use to try to generate a backtrace for where a freed block of memory was freed from, which might be useful for debugging.</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>R241 KIO</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D10989">https://phabricator.kde.org/D10989</a></div></div><br /><div><strong>To: </strong>jtamate, Frameworks, dfaure<br /><strong>Cc: </strong>mpyne, michaelh<br /></div>