summaryrefslogtreecommitdiff
path: root/protocols/WhatsAppWeb/src/utils.cpp
diff options
context:
space:
mode:
authorGeorge Hazan <ghazan@miranda.im>2022-10-03 21:00:21 +0300
committerGeorge Hazan <ghazan@miranda.im>2022-10-03 21:00:21 +0300
commit1394d503041125fd2d75fae80af404e2cd476eeb (patch)
tree4462875820b1094822b6fac281168c8862fc1493 /protocols/WhatsAppWeb/src/utils.cpp
parentcc0cde8d87358738bcad304e8bdc9c944d55cdaa (diff)
code cleaning
Diffstat (limited to 'protocols/WhatsAppWeb/src/utils.cpp')
-rw-r--r--protocols/WhatsAppWeb/src/utils.cpp13
1 files changed, 8 insertions, 5 deletions
diff --git a/protocols/WhatsAppWeb/src/utils.cpp b/protocols/WhatsAppWeb/src/utils.cpp
index 127ec33a45..4c8fb5d8ca 100644
--- a/protocols/WhatsAppWeb/src/utils.cpp
+++ b/protocols/WhatsAppWeb/src/utils.cpp
@@ -155,6 +155,14 @@ int WhatsAppProto::WSSendNode(WANode &node, WA_PKT_HANDLER pHandler)
if (m_hServerConn == nullptr)
return 0;
+ if (pHandler != nullptr) {
+ CMStringA id(generateMessageId());
+ node.addAttr("id", id);
+
+ mir_cslock lck(m_csPacketQueue);
+ m_arPacketQueue.insert(new WARequest(id, pHandler));
+ }
+
CMStringA szText;
node.print(szText);
debugLogA("Sending binary node:\n%s", szText.c_str());
@@ -162,11 +170,6 @@ int WhatsAppProto::WSSendNode(WANode &node, WA_PKT_HANDLER pHandler)
WAWriter writer;
writer.writeNode(&node);
- if (pHandler != nullptr) {
- mir_cslock lck(m_csPacketQueue);
- m_arPacketQueue.insert(new WARequest(node.getAttr("id"), pHandler));
- }
-
MBinBuffer encData = m_noise->encrypt(writer.body.data(), writer.body.length());
MBinBuffer payload = m_noise->encodeFrame(encData.data(), encData.length());
WebSocket_SendBinary(m_hServerConn, payload.data(), payload.length());