<table><tr><td style="">jtamate created this revision.<br />jtamate added reviewers: Frameworks, dfaure.<br />Restricted Application added a project: Frameworks.
</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/D9001" rel="noreferrer">View Revision</a></tr></table><br /><div><strong>REVISION SUMMARY</strong><div><p>This is my first phabricator revision, I hope I'm doing it right.</p>

<p>First part of the patch in kcoreaddons. Don't remove a child if it is not in the list of children.<br />
Second part in kio. Don't emitResult, that will delete the job, if the job has subjobs.</p>

<p>It fixes the crash for me as I was able to reproduce it and I can't.</p>

<p>I hope it doesn't introduce any leak.</p></div></div><br /><div><strong>TEST PLAN</strong><div><p>Using a filesystem where you can not change file rights (for example ntfs), move a file from a ext4 folder to that filesystem. The "can not change permissions" dialog appears, with options to retry or cancel. Press retry, a new dialog saying it can not move the original file because it does not exists appears, press retry more than 3 times, then cancel. Before I got a crash, now I can do this several times without crash.</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/D9001" rel="noreferrer">https://phabricator.kde.org/D9001</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>src/core/filecopyjob.cpp<br />
src/lib/jobs/kcompositejob.cpp</div></div></div><br /><div><strong>To: </strong>jtamate, Frameworks, dfaure<br /></div>