diff options
Diffstat (limited to 'src/corelib/io/qwindowspipewriter.cpp')
-rw-r--r-- | src/corelib/io/qwindowspipewriter.cpp | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/src/corelib/io/qwindowspipewriter.cpp b/src/corelib/io/qwindowspipewriter.cpp index 846891102f..75cb8a7ede 100644 --- a/src/corelib/io/qwindowspipewriter.cpp +++ b/src/corelib/io/qwindowspipewriter.cpp @@ -57,7 +57,6 @@ QWindowsPipeWriter::QWindowsPipeWriter(HANDLE pipeWriteEnd, QObject *parent) : QObject(parent), handle(pipeWriteEnd), overlapped(nullptr), - numberOfBytesToWrite(0), pendingBytesWrittenValue(0), stopped(true), writeSequenceStarted(false), @@ -98,7 +97,7 @@ bool QWindowsPipeWriter::waitForWrite(int msecs) qint64 QWindowsPipeWriter::bytesToWrite() const { - return numberOfBytesToWrite + pendingBytesWrittenValue; + return buffer.size() + pendingBytesWrittenValue; } void QWindowsPipeWriter::emitPendingBytesWrittenValue() @@ -137,7 +136,6 @@ void QWindowsPipeWriter::notified(DWORD errorCode, DWORD numberOfBytesWritten) { notifiedCalled = true; writeSequenceStarted = false; - numberOfBytesToWrite = 0; Q_ASSERT(errorCode != ERROR_SUCCESS || numberOfBytesWritten == DWORD(buffer.size())); buffer.clear(); @@ -193,13 +191,11 @@ bool QWindowsPipeWriter::write(const QByteArray &ba) overlapped = new Overlapped(this); overlapped->clear(); buffer = ba; - numberOfBytesToWrite = buffer.size(); stopped = false; writeSequenceStarted = true; - if (!WriteFileEx(handle, buffer.constData(), numberOfBytesToWrite, + if (!WriteFileEx(handle, buffer.constData(), buffer.size(), overlapped, &writeFileCompleted)) { writeSequenceStarted = false; - numberOfBytesToWrite = 0; buffer.clear(); const DWORD errorCode = GetLastError(); |