diff options
author | Denis Shienkov <denis.shienkov@gmail.com> | 2016-07-07 18:22:17 +0300 |
---|---|---|
committer | Denis Shienkov <denis.shienkov@gmail.com> | 2016-07-07 18:27:36 +0000 |
commit | 09f6a0f1cacd8d04d5ec8413eed712308395f962 (patch) | |
tree | df2fbf8a5356848dae3a2ce6705e4cb6f1d5e10c /src | |
parent | 5ddbb6b87266d0f8d7dffc03c86c2e80b3735d2c (diff) | |
download | qtserialport-09f6a0f1cacd8d04d5ec8413eed712308395f962.tar.gz |
Use append() instead of memcpy() where possible
... to add the data to the internal QIODevice's buffer,
that simplified the code and is more reliable.
Change-Id: I61e6c7be3259cd754e4bbe6a3142dcdd6d33f7b6
Reviewed-by: Anton Kudryavtsev <a.kudryavtsev@netris.ru>
Reviewed-by: Sergey Belyashov <Sergey.Belyashov@gmail.com>
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/serialport/qserialport_unix.cpp | 2 | ||||
-rw-r--r-- | src/serialport/qserialport_win.cpp | 8 |
2 files changed, 4 insertions, 6 deletions
diff --git a/src/serialport/qserialport_unix.cpp b/src/serialport/qserialport_unix.cpp index acd76b5..8e06ada 100644 --- a/src/serialport/qserialport_unix.cpp +++ b/src/serialport/qserialport_unix.cpp @@ -889,7 +889,7 @@ inline bool QSerialPortPrivate::initialize(QIODevice::OpenMode mode) qint64 QSerialPortPrivate::writeData(const char *data, qint64 maxSize) { - ::memcpy(writeBuffer.reserve(maxSize), data, maxSize); + writeBuffer.append(data, maxSize); if (!writeBuffer.isEmpty() && !isWriteNotificationEnabled()) setWriteNotificationEnabled(true); return maxSize; diff --git a/src/serialport/qserialport_win.cpp b/src/serialport/qserialport_win.cpp index f4f8317..ae32fcf 100644 --- a/src/serialport/qserialport_win.cpp +++ b/src/serialport/qserialport_win.cpp @@ -472,10 +472,8 @@ bool QSerialPortPrivate::completeAsyncRead(qint64 bytesTransferred) readStarted = false; return false; } - if (bytesTransferred > 0) { - char *ptr = buffer.reserve(bytesTransferred); - ::memcpy(ptr, readChunkBuffer.constData(), bytesTransferred); - } + if (bytesTransferred > 0) + buffer.append(readChunkBuffer.constData(), bytesTransferred); readStarted = false; @@ -620,7 +618,7 @@ qint64 QSerialPortPrivate::writeData(const char *data, qint64 maxSize) { Q_Q(QSerialPort); - ::memcpy(writeBuffer.reserve(maxSize), data, maxSize); + writeBuffer.append(data, maxSize); actualBytesToWrite += maxSize; if (!writeBuffer.isEmpty() && !writeStarted) { |