https://bugs.kde.org/show_bug.cgi?id=408350

David Faure <fa...@kde.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Latest Commit|                            |https://commits.kde.org/kio
                   |                            |/4306dce1e8d9ca61ef5b7246bd
                   |                            |602e21a5e63621
         Resolution|---                         |FIXED
             Status|REPORTED                    |RESOLVED
   Version Fixed In|                            |5.62.0

--- Comment #1 from David Faure <fa...@kde.org> ---
Git commit 4306dce1e8d9ca61ef5b7246bd602e21a5e63621 by David Faure, on behalf
of Ahmad Samir.
Committed on 06/09/2019 at 14:07.
Pushed by dfaure into branch 'master'.

[CopyJob] Fix crash when copying an already existing dir and pressing "Skip"

Summary:
In copyNextFile() if all files have been skipped QList::erase() will
return end() iterator, accessing the element it denotes will cause
a segmentation fault. Make sure the iterator is valid if it's changed
inside the while loop, if we're going to use it before control reaches
the loop condition.

Add a unit test.
FIXED-IN: 5.62.0

Test Plan:
kioclient5 copy SOME_DIR_WITH_FILES DEST
kioclient5 copy --interactive SOME_DIR_WITH_FILES DEST

- In the "folder already exists" dialog enable "Apply to all" then hit "Skip"
- Without the patch you'd get a segmentation fault, with the patch the copy
  should finish as expected

All unit tests passed (except kiocore-kacltest, but that's unrelated).

Reviewers: #frameworks, dfaure

Reviewed By: dfaure

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D23708

M  +31   -0    autotests/jobtest.cpp
M  +2    -0    autotests/jobtest.h
M  +1    -1    src/core/copyjob.cpp

https://commits.kde.org/kio/4306dce1e8d9ca61ef5b7246bd602e21a5e63621

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to