| Index: core/src/fxcrt/fx_basic_bstring.cpp
 | 
| diff --git a/core/src/fxcrt/fx_basic_bstring.cpp b/core/src/fxcrt/fx_basic_bstring.cpp
 | 
| index 961aebe69c001ebc0f9cd62fcf6c51e262c46b9e..cda7d1fdd7531618c6fd2e857fb3ecb29dc60fa6 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);
 | 
| 
 |