diff options
author | Alex Trotsenko <alex1973tr@gmail.com> | 2021-07-02 17:31:26 +0300 |
---|---|---|
committer | Alex Trotsenko <alex1973tr@gmail.com> | 2021-07-08 16:14:11 +0300 |
commit | 1a57a4974be9dbdeedef6f5c6eb4332eecf6f0c9 (patch) | |
tree | 383496919e92f6fe57e87d157a6d34bc5b29641c /src/network/socket | |
parent | 82499f81478032911d8f788aa28e8d780b31c973 (diff) |
QLocalSocket/Win: reimplement skipData() function
The base implementation discards the data by reading into a dummy
buffer, which is slower than necessary.
Change-Id: Iabf0c4a25746af6cac5b61d7bda66d89501c808c
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de>
Diffstat (limited to 'src/network/socket')
-rw-r--r-- | src/network/socket/qlocalsocket_win.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/network/socket/qlocalsocket_win.cpp b/src/network/socket/qlocalsocket_win.cpp index 89901533af..e430f642db 100644 --- a/src/network/socket/qlocalsocket_win.cpp +++ b/src/network/socket/qlocalsocket_win.cpp @@ -277,7 +277,12 @@ qint64 QLocalSocket::readLineData(char *data, qint64 maxSize) qint64 QLocalSocket::skipData(qint64 maxSize) { - return QIODevice::skipData(maxSize); + Q_D(QLocalSocket); + + if (!maxSize) + return 0; + + return transformPipeReaderResult(d->pipeReader->skip(maxSize)); } qint64 QLocalSocket::writeData(const char *data, qint64 len) |