summaryrefslogtreecommitdiffstats
path: root/src/corelib/io/qstorageinfo_unix.cpp
diff options
context:
space:
mode:
authorThiago Macieira <thiago.macieira@intel.com>2018-07-17 18:20:12 +0000
committerThe Qt Project <gerrit-noreply@qt-project.org>2018-07-17 18:20:12 +0000
commitcc5d8168001e652c045ff42685edf257ce00603c (patch)
tree6320f169d621bed128f08d92676035a8e2f2ab23 /src/corelib/io/qstorageinfo_unix.cpp
parenta9dfe71cca38e6b62445292ed2c6ec1c8224430a (diff)
parent1783fca89768a9d503d886673643dc4542ec467f (diff)
Merge "Merge remote-tracking branch 'origin/5.11' into dev" into refs/staging/dev
Diffstat (limited to 'src/corelib/io/qstorageinfo_unix.cpp')
-rw-r--r--src/corelib/io/qstorageinfo_unix.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/corelib/io/qstorageinfo_unix.cpp b/src/corelib/io/qstorageinfo_unix.cpp
index 7664b77d81..b7621b5d2f 100644
--- a/src/corelib/io/qstorageinfo_unix.cpp
+++ b/src/corelib/io/qstorageinfo_unix.cpp
@@ -342,13 +342,14 @@ inline bool QStorageIterator::isValid() const
inline bool QStorageIterator::next()
{
QList<QByteArray> data;
+ // If file is virtual, file.readLine() may succeed even when file.atEnd().
do {
const QByteArray line = file.readLine();
+ if (line.isEmpty() && file.atEnd())
+ return false;
data = line.split(' ');
- } while (data.count() < 3 && !file.atEnd());
+ } while (data.count() < 4);
- if (file.atEnd())
- return false;
m_device = data.at(0);
m_rootPath = data.at(1);
m_fileSystemType = data.at(2);