diff options
Diffstat (limited to 'src/websockets/qwebsocketdataprocessor.cpp')
-rw-r--r-- | src/websockets/qwebsocketdataprocessor.cpp | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/src/websockets/qwebsocketdataprocessor.cpp b/src/websockets/qwebsocketdataprocessor.cpp index 520ecdc..d9fc550 100644 --- a/src/websockets/qwebsocketdataprocessor.cpp +++ b/src/websockets/qwebsocketdataprocessor.cpp @@ -182,12 +182,16 @@ void QWebSocketDataProcessor::process(QIODevice *pIoDevice) } if (frame.isFinalFrame()) { - if (m_opCode == QWebSocketProtocol::OpCodeText) - Q_EMIT textMessageReceived(m_textMessage); - else - Q_EMIT binaryMessageReceived(m_binaryMessage); - clear(); isDone = true; + if (m_opCode == QWebSocketProtocol::OpCodeText) { + const QString textMessage(m_textMessage); + clear(); + Q_EMIT textMessageReceived(textMessage); + } else { + const QByteArray binaryMessage(m_binaryMessage); + clear(); + Q_EMIT binaryMessageReceived(binaryMessage); + } } } } else { |