From 974f84a5a64b567330c7cdda4e02e29437cb735d Mon Sep 17 00:00:00 2001 From: Alexander Stock Date: Mon, 20 Jan 2020 10:51:20 +0000 Subject: [PATCH] Use proper encoding in UnescapeString() to speed up processing Use the proper encoding to prevent extraneous conversion encoding conversion inside UnescapeString(). This change reduces the eeschema symbol library loading time (ubuntu and windows build) from 2700ms to 1700ms. See merge request https://gitlab.com/kicad/code/kicad/merge_requests/70 --- common/string.cpp | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/common/string.cpp b/common/string.cpp index 48ab542334..0cfe4c0448 100644 --- a/common/string.cpp +++ b/common/string.cpp @@ -132,21 +132,21 @@ wxString UnescapeString( const wxString& aSource ) { wxString converted = aSource; - converted.Replace( "{dblquote}", "\"" ); - converted.Replace( "{quote}", "'" ); - converted.Replace( "{lt}", "<" ); - converted.Replace( "{gt}", ">" ); - converted.Replace( "{backslash}", "\\" ); - converted.Replace( "{slash}", "/" ); - converted.Replace( "{bar}", "|" ); - converted.Replace( "{colon}", ":" ); - converted.Replace( "{space}", " " ); - converted.Replace( "{dollar}", "$" ); - converted.Replace( "{tab}", "\t" ); - converted.Replace( "{return}", "\n" ); + converted.Replace( wxS( "{dblquote}" ), wxS( "\"" ) ); + converted.Replace( wxS( "{quote}" ), wxS( "'" ) ); + converted.Replace( wxS( "{lt}" ), wxS( "<" ) ); + converted.Replace( wxS( "{gt}" ), wxS( ">" ) ); + converted.Replace( wxS( "{backslash}" ), wxS( "\\" ) ); + converted.Replace( wxS( "{slash}" ), wxS( "/" ) ); + converted.Replace( wxS( "{bar}" ), wxS( "|" ) ); + converted.Replace( wxS( "{colon}" ), wxS( ":" ) ); + converted.Replace( wxS( "{space}" ), wxS( " " ) ); + converted.Replace( wxS( "{dollar}" ), wxS( "$" ) ); + converted.Replace( wxS( "{tab}" ), wxS( "\t" ) ); + converted.Replace( wxS( "{return}" ), wxS( "\n" ) ); // must be done last - converted.Replace( "{brace}", "{" ); + converted.Replace( wxS( "{brace}" ), wxS( "{" ) ); return converted; }