From d3b6ef6ccfa93a93d7a80d71bc2779f4ca7600f6 Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Sat, 17 Feb 2018 10:06:42 -0800 Subject: QFile::rename: fix the error message if renaming a file by copy fails MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The QFile out variable cannot be open because if out.open() succeeded, we could never reach this line. Instead, we want to capture *why* either the source or the destination failed to open. Task-number: QTBUG-66445 Change-Id: I940917d6763842499b18fffd15142f231bf34a47 Reviewed-by: Jędrzej Nowacki --- src/corelib/io/qfile.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src/corelib') diff --git a/src/corelib/io/qfile.cpp b/src/corelib/io/qfile.cpp index 33b0b2eb66..3166fa1b83 100644 --- a/src/corelib/io/qfile.cpp +++ b/src/corelib/io/qfile.cpp @@ -676,8 +676,11 @@ QFile::rename(const QString &newName) return !error; } close(); + d->setError(QFile::RenameError, + tr("Cannot open destination file: %1").arg(out.errorString())); + } else { + d->setError(QFile::RenameError, errorString()); } - d->setError(QFile::RenameError, out.isOpen() ? errorString() : out.errorString()); } return false; } -- cgit v1.2.3