summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGeorge Hazan <ghazan@miranda.im>2019-10-15 21:24:05 +0300
committerGeorge Hazan <ghazan@miranda.im>2019-10-15 21:24:05 +0300
commitb9080786be4ce7c18656a0421de6b9fd0b95d598 (patch)
tree055b56f6bf397f1d49d79d2b227a11485977c9a9 /src
parent33724ec73d87317bc58d4100898775712299a89c (diff)
MBinBuffer::assign = function to replace buffer contents
Diffstat (limited to 'src')
-rw-r--r--src/mir_core/src/binbuffer.cpp13
-rw-r--r--src/mir_core/src/mir_core.def1
-rw-r--r--src/mir_core/src/mir_core64.def1
3 files changed, 15 insertions, 0 deletions
diff --git a/src/mir_core/src/binbuffer.cpp b/src/mir_core/src/binbuffer.cpp
index 3ca6f871f3..90d987881c 100644
--- a/src/mir_core/src/binbuffer.cpp
+++ b/src/mir_core/src/binbuffer.cpp
@@ -55,6 +55,19 @@ void MBinBuffer::appendBefore(void *pBuf, size_t bufLen)
else m_len = 0;
}
+void MBinBuffer::assign(void *pBuf, size_t bufLen)
+{
+ if (pBuf == nullptr || bufLen == 0)
+ return;
+
+ m_buf = (char *)mir_realloc(m_buf, bufLen);
+ if (m_buf) {
+ memcpy(m_buf, pBuf, bufLen);
+ m_len = bufLen;
+ }
+ else m_len = 0;
+}
+
void MBinBuffer::remove(size_t sz)
{
if (sz > m_len)
diff --git a/src/mir_core/src/mir_core.def b/src/mir_core/src/mir_core.def
index 7069b1e3f2..3163bc75d7 100644
--- a/src/mir_core/src/mir_core.def
+++ b/src/mir_core/src/mir_core.def
@@ -1450,3 +1450,4 @@ XmlGetChildText @1645
?Unsigned64Text@XMLElement@tinyxml2@@QBE_K_K@Z @1665 NONAME
?Unsigned64Value@XMLAttribute@tinyxml2@@QBE_KXZ @1666 NONAME
?RemoveControl@CDlgBase@@IAEXPAVCCtrlBase@@@Z @1667 NONAME
+?assign@MBinBuffer@@QAEXPAXI@Z @1668 NONAME
diff --git a/src/mir_core/src/mir_core64.def b/src/mir_core/src/mir_core64.def
index 7cc4be7567..e0ecff0900 100644
--- a/src/mir_core/src/mir_core64.def
+++ b/src/mir_core/src/mir_core64.def
@@ -1450,3 +1450,4 @@ XmlGetChildText @1645
?Unsigned64Text@XMLElement@tinyxml2@@QEBA_K_K@Z @1665 NONAME
?Unsigned64Value@XMLAttribute@tinyxml2@@QEBA_KXZ @1666 NONAME
?RemoveControl@CDlgBase@@IEAAXPEAVCCtrlBase@@@Z @1667 NONAME
+?assign@MBinBuffer@@QEAAXPEAX_K@Z @1668 NONAME