Use 'special' escaping for certain fields
Most fields are escaped using the `\` notation. But the VALUE field and
the symbol name need to be escaped using braces notation.
Fixes https://gitlab.com/kicad/code/kicad/issues/10097
(cherry picked from commit 71e7b4b77b
)
This commit is contained in:
parent
88a8ad2ca1
commit
3ace4446e7
|
@ -2728,7 +2728,6 @@ void SCH_LEGACY_PLUGIN_CACHE::loadDocs()
|
||||||
|
|
||||||
aliasName = wxString::FromUTF8( line );
|
aliasName = wxString::FromUTF8( line );
|
||||||
aliasName.Trim();
|
aliasName.Trim();
|
||||||
// aliasName = EscapeString( aliasName, CTX_LIBID );
|
|
||||||
|
|
||||||
LIB_SYMBOL_MAP::iterator it = m_symbols.find( aliasName );
|
LIB_SYMBOL_MAP::iterator it = m_symbols.find( aliasName );
|
||||||
|
|
||||||
|
@ -2835,6 +2834,7 @@ LIB_SYMBOL* SCH_LEGACY_PLUGIN_CACHE::LoadPart( LINE_READER& aReader, int aMajorV
|
||||||
wxString name, prefix, tmp;
|
wxString name, prefix, tmp;
|
||||||
|
|
||||||
name = tokens.GetNextToken();
|
name = tokens.GetNextToken();
|
||||||
|
name = EscapeString( name, CTX_LIBID );
|
||||||
pos += name.size() + 1;
|
pos += name.size() + 1;
|
||||||
|
|
||||||
prefix = tokens.GetNextToken();
|
prefix = tokens.GetNextToken();
|
||||||
|
@ -3072,6 +3072,11 @@ void SCH_LEGACY_PLUGIN_CACHE::loadField( std::unique_ptr<LIB_SYMBOL>& aSymbol,
|
||||||
|
|
||||||
parseQuotedString( text, aReader, line, &line, true );
|
parseQuotedString( text, aReader, line, &line, true );
|
||||||
|
|
||||||
|
// The value field needs to be "special" escaped. The other fields are
|
||||||
|
// escaped normally and don't need special handling
|
||||||
|
if( id == VALUE_FIELD )
|
||||||
|
text = EscapeString( text, CTX_QUOTED_STR );
|
||||||
|
|
||||||
// Doctor the *.lib file field which has a "~" in blank fields. New saves will
|
// Doctor the *.lib file field which has a "~" in blank fields. New saves will
|
||||||
// not save like this.
|
// not save like this.
|
||||||
if( text.size() == 1 && text[0] == '~' )
|
if( text.size() == 1 && text[0] == '~' )
|
||||||
|
|
Loading…
Reference in New Issue