1. wxThread changes (detached/joinable) for MSW and docs updates
2. wxUSE_GUI=0 compilation for MSW (use vc6dll.t with tmake) and many small fixes related to this 3. an attempt to make wxLog more MT friendly 4. a small fix for wxRegConfig: it doesn't create empty unused keys any more (SetPath() would always create a key, now it's deleted if it was empty) git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4712 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -160,13 +160,25 @@ void wxRegConfig::SetPath(const wxString& strPath)
|
||||
}
|
||||
|
||||
// recombine path parts in one variable
|
||||
wxString strRegPath;
|
||||
wxString strOldPath = m_strPath, strRegPath;
|
||||
m_strPath.Empty();
|
||||
for ( size_t n = 0; n < aParts.Count(); n++ ) {
|
||||
strRegPath << '\\' << aParts[n];
|
||||
m_strPath << wxCONFIG_PATH_SEPARATOR << aParts[n];
|
||||
}
|
||||
|
||||
if ( m_strPath == strOldPath )
|
||||
return;
|
||||
|
||||
// as we create the registry key when SetPath(key) is done, we can be left
|
||||
// with plenty of empty keys if this was only done to try to read some value
|
||||
// which, in fact, doesn't exist - to prevent this from happening we
|
||||
// automatically delete the old key if it was empty
|
||||
if ( m_keyLocal.IsEmpty() )
|
||||
{
|
||||
m_keyLocal.DeleteSelf();
|
||||
}
|
||||
|
||||
// change current key(s)
|
||||
m_keyLocal.SetName(m_keyLocalRoot, strRegPath);
|
||||
m_keyGlobal.SetName(m_keyGlobalRoot, strRegPath);
|
||||
|
||||
Reference in New Issue
Block a user