// ----------------------------------------------------------------------------
// we put our data in HKLM\SOFTWARE_KEY\appname
-#define SOFTWARE_KEY wxString("Software\\")
+#define SOFTWARE_KEY wxString(wxT("Software\\"))
// ----------------------------------------------------------------------------
// global functions
// registry APIs want backslashes instead of slashes
wxString strRegPath;
- size_t len = m_strPath.length();
+ if ( !m_strPath.empty() )
+ {
+ size_t len = m_strPath.length();
- const wxChar *src = m_strPath.c_str();
- wxChar *dst = strRegPath.GetWriteBuf(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;
- }
+ const wxChar *end = src + len;
+ for ( ; src < end; src++, dst++ )
+ {
+ if ( *src == wxCONFIG_PATH_SEPARATOR )
+ *dst = _T('\\');
+ else
+ *dst = *src;
+ }
- strRegPath.UngetWriteBuf(len);
+ strRegPath.UngetWriteBuf(len);
+ }
// 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
if ( m_keyLocal.IsEmpty() ) {
wxString strKey = GetPath().AfterLast(wxCONFIG_PATH_SEPARATOR);
- SetPath(".."); // changes m_keyLocal
+ SetPath(_T("..")); // changes m_keyLocal
return LocalKey().DeleteKey(strKey);
}
}