summaryrefslogtreecommitdiff
path: root/core/src/fxcrt
diff options
context:
space:
mode:
Diffstat (limited to 'core/src/fxcrt')
-rw-r--r--core/src/fxcrt/fx_basic_bstring.cpp9
-rw-r--r--core/src/fxcrt/fx_basic_wstring.cpp9
2 files changed, 18 insertions, 0 deletions
diff --git a/core/src/fxcrt/fx_basic_bstring.cpp b/core/src/fxcrt/fx_basic_bstring.cpp
index 961aebe69c..cda7d1fdd7 100644
--- a/core/src/fxcrt/fx_basic_bstring.cpp
+++ b/core/src/fxcrt/fx_basic_bstring.cpp
@@ -341,6 +341,15 @@ void CFX_ByteString::ReleaseBuffer(FX_STRSIZE nNewLength)
m_pData->m_nDataLength = nNewLength;
m_pData->m_String[nNewLength] = 0;
}
+FX_LPSTR CFX_ByteString::LockBuffer()
+{
+ if (m_pData == NULL) {
+ return NULL;
+ }
+ FX_LPSTR lpsz = GetBuffer(0);
+ m_pData->m_nRefs = -1;
+ return lpsz;
+}
void CFX_ByteString::Reserve(FX_STRSIZE len)
{
GetBuffer(len);
diff --git a/core/src/fxcrt/fx_basic_wstring.cpp b/core/src/fxcrt/fx_basic_wstring.cpp
index 2ea23e4f19..e255aa0779 100644
--- a/core/src/fxcrt/fx_basic_wstring.cpp
+++ b/core/src/fxcrt/fx_basic_wstring.cpp
@@ -535,6 +535,15 @@ int CFX_WideString::Compare(const CFX_WideString& str) const
}
return 0;
}
+FX_LPWSTR CFX_WideString::LockBuffer()
+{
+ if (m_pData == NULL) {
+ return NULL;
+ }
+ FX_LPWSTR lpsz = GetBuffer(0);
+ m_pData->m_nRefs = -1;
+ return lpsz;
+}
void CFX_WideString::SetAt(FX_STRSIZE nIndex, FX_WCHAR ch)
{
if (m_pData == NULL) {