diff options
author | George Hazan <ghazan@miranda.im> | 2019-10-15 21:24:05 +0300 |
---|---|---|
committer | George Hazan <ghazan@miranda.im> | 2019-10-15 21:24:05 +0300 |
commit | b9080786be4ce7c18656a0421de6b9fd0b95d598 (patch) | |
tree | 055b56f6bf397f1d49d79d2b227a11485977c9a9 /src/mir_core | |
parent | 33724ec73d87317bc58d4100898775712299a89c (diff) |
MBinBuffer::assign = function to replace buffer contents
Diffstat (limited to 'src/mir_core')
-rw-r--r-- | src/mir_core/src/binbuffer.cpp | 13 | ||||
-rw-r--r-- | src/mir_core/src/mir_core.def | 1 | ||||
-rw-r--r-- | src/mir_core/src/mir_core64.def | 1 |
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
|