Don't split legacy paths
The '.' is a valid character in the legacy preferences, not a separator.
Also adds fail-safe catch for JSON throws
Fixes https://gitlab.com/kicad/code/kicad/issues/10211
(cherry picked from commit a326d777f0
)
This commit is contained in:
parent
de39bffd90
commit
dda569d486
|
@ -549,7 +549,15 @@ bool EESCHEMA_SETTINGS::MigrateFromLegacy( wxConfigBase* aCfg )
|
|||
if( aCfg->Read( key, &value ) )
|
||||
{
|
||||
std::string key_utf( key.ToUTF8() );
|
||||
js[JSON_SETTINGS_INTERNALS::PointerFromString( key_utf )] = value;
|
||||
|
||||
try
|
||||
{
|
||||
js[key_utf] = value;
|
||||
}
|
||||
catch(...)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -562,7 +570,15 @@ bool EESCHEMA_SETTINGS::MigrateFromLegacy( wxConfigBase* aCfg )
|
|||
if( aCfg->Read( key, &value ) )
|
||||
{
|
||||
std::string key_utf( key.ToUTF8() );
|
||||
js[JSON_SETTINGS_INTERNALS::PointerFromString( key_utf )] = value;
|
||||
|
||||
try
|
||||
{
|
||||
js[key_utf] = value;
|
||||
}
|
||||
catch(...)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue