diff --git a/common/gestfich.cpp b/common/gestfich.cpp index 7b8ab266c6..c8467ad5f1 100644 --- a/common/gestfich.cpp +++ b/common/gestfich.cpp @@ -140,7 +140,14 @@ int ExecuteFile( const wxString& aEditorName, const wxString& aFileName, wxProce args[i++] = param.wc_str(); if( !aFileName.IsEmpty() ) - args[i++] = aFileName.wc_str(); + { + wxString name = aFileName; + + // A quoted filename is incorrectly handled here, perhaps because wxExecute + // add quotes. So remove quotes if any (they also are illegal in filenames). + name.Replace( "\"", "" ); + args[i++] = name.wc_str(); + } args[i] = nullptr;