From 523440a15f83dfda30e6bede02f83d76d8765647 Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Thu, 29 May 2014 00:39:02 +0200 Subject: QSaveFile: error out in open when the file is a directory Change-Id: Ifb1697fedf6dd28fe317282c8b4824f34ec61981 Reviewed-by: David Faure --- src/corelib/io/qsavefile.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/corelib/io') diff --git a/src/corelib/io/qsavefile.cpp b/src/corelib/io/qsavefile.cpp index 05d7687007..8be4125ef5 100644 --- a/src/corelib/io/qsavefile.cpp +++ b/src/corelib/io/qsavefile.cpp @@ -206,6 +206,12 @@ bool QSaveFile::open(OpenMode mode) return false; } + if (existingFile.isDir()) { + d->setError(QFileDevice::WriteError, QSaveFile::tr("Filename refers to a directory")); + d->writeError = QFileDevice::WriteError; + return false; + } + // Resolve symlinks. Don't use QFileInfo::canonicalFilePath so it still give the expected // target even if the file does not exist d->finalFileName = d->fileName; -- cgit v1.2.3