From 3a1e66dba3e4fa7b658d30b742e9bc66b7fac896 Mon Sep 17 00:00:00 2001 From: Seth Hillbrand Date: Sun, 20 Jan 2019 16:40:30 -0800 Subject: [PATCH] kicad: URI-encode zip names to handle unicode Workaround for wx not handling unicode strings in the archive file system handler. Fixes: lp:1812516 * https://bugs.launchpad.net/kicad/+bug/1812516 --- kicad/files-io.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/kicad/files-io.cpp b/kicad/files-io.cpp index be98b922db..95bae341c0 100644 --- a/kicad/files-io.cpp +++ b/kicad/files-io.cpp @@ -29,6 +29,7 @@ #include #include +#include #include #include @@ -83,10 +84,11 @@ void KICAD_MANAGER_FRAME::OnUnarchiveFiles( wxCommandEvent& event ) wxFileSystem zipfilesys; zipfilesys.AddHandler( new wxZipFSHandler ); - zipfilesys.ChangePathTo( zipfiledlg.GetPath() + wxT( "#zip:" ), true ); + auto path = wxURI( zipfiledlg.GetPath() + wxT( "#zip:" ) ).BuildURI(); + zipfilesys.ChangePathTo( path, true ); wxFSFile* zipfile = NULL; - wxString localfilename = zipfilesys.FindFirst( wxFileSelectorDefaultWildcardStr ); + wxString localfilename = zipfilesys.FindFirst( wxFileSelectorDefaultWildcardStr, wxFILE ); while( !localfilename.IsEmpty() ) {