diff options
author | Liang Qi <liang.qi@qt.io> | 2018-02-16 08:07:08 +0000 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2018-02-16 22:31:50 +0000 |
commit | 048d8dee52545a9b0a548b4c56958a75a99d9aee (patch) | |
tree | c549685860a49e71809e06e90cc0fa6031a2def1 /src/xml/sax/qxml.cpp | |
parent | 6ffb358822db2e0d30fb34853c3222cd866d57c5 (diff) | |
parent | 942ab490724fcc9544e786e5783718e1a07aa50b (diff) |
Merge "Merge remote-tracking branch 'origin/5.11' into dev" into refs/staging/dev
Diffstat (limited to 'src/xml/sax/qxml.cpp')
-rw-r--r-- | src/xml/sax/qxml.cpp | 14 |
1 files changed, 2 insertions, 12 deletions
diff --git a/src/xml/sax/qxml.cpp b/src/xml/sax/qxml.cpp index b781176e13..168e8c3cb4 100644 --- a/src/xml/sax/qxml.cpp +++ b/src/xml/sax/qxml.cpp @@ -1270,18 +1270,8 @@ void QXmlInputSource::fetchData() } else if (device->isOpen() || device->open(QIODevice::ReadOnly)) { rawData.resize(BufferSize); qint64 size = device->read(rawData.data(), BufferSize); - - if (size != -1) { - // We don't want to give fromRawData() less than four bytes if we can avoid it. - while (size < 4) { - if (!device->waitForReadyRead(-1)) - break; - int ret = device->read(rawData.data() + size, BufferSize - size); - if (ret <= 0) - break; - size += ret; - } - } + if (size == 0 && device->waitForReadyRead(-1)) + size = device->read(rawData.data(), BufferSize); rawData.resize(qMax(qint64(0), size)); } |