avoid an assert in wxString::GetWriteBuf()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@14727 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -350,21 +350,24 @@ void wxRegConfig::SetPath(const wxString& strPath)
|
|||||||
|
|
||||||
// registry APIs want backslashes instead of slashes
|
// registry APIs want backslashes instead of slashes
|
||||||
wxString strRegPath;
|
wxString strRegPath;
|
||||||
size_t len = m_strPath.length();
|
if ( !m_strPath.empty() )
|
||||||
|
|
||||||
const wxChar *src = m_strPath.c_str();
|
|
||||||
wxChar *dst = strRegPath.GetWriteBuf(len);
|
|
||||||
|
|
||||||
const wxChar *end = src + len;
|
|
||||||
for ( ; src < end; src++, dst++ )
|
|
||||||
{
|
{
|
||||||
if ( *src == wxCONFIG_PATH_SEPARATOR )
|
size_t len = m_strPath.length();
|
||||||
*dst = _T('\\');
|
|
||||||
else
|
|
||||||
*dst = *src;
|
|
||||||
}
|
|
||||||
|
|
||||||
strRegPath.UngetWriteBuf(len);
|
const wxChar *src = m_strPath.c_str();
|
||||||
|
wxChar *dst = strRegPath.GetWriteBuf(len);
|
||||||
|
|
||||||
|
const wxChar *end = src + len;
|
||||||
|
for ( ; src < end; src++, dst++ )
|
||||||
|
{
|
||||||
|
if ( *src == wxCONFIG_PATH_SEPARATOR )
|
||||||
|
*dst = _T('\\');
|
||||||
|
else
|
||||||
|
*dst = *src;
|
||||||
|
}
|
||||||
|
|
||||||
|
strRegPath.UngetWriteBuf(len);
|
||||||
|
}
|
||||||
|
|
||||||
// this is not needed any longer as we don't create keys unnecessarily any
|
// this is not needed any longer as we don't create keys unnecessarily any
|
||||||
// more (now it is done on demand, i.e. only when they're going to contain
|
// more (now it is done on demand, i.e. only when they're going to contain
|
||||||
|
Reference in New Issue
Block a user