]> git.saurik.com Git - wxWidgets.git/commitdiff
Fix wxFileSystem::FileNameToURL() for Unicode file names.
authorVáclav Slavík <vslavik@fastmail.fm>
Sun, 28 Mar 2010 15:41:35 +0000 (15:41 +0000)
committerVáclav Slavík <vslavik@fastmail.fm>
Sun, 28 Mar 2010 15:41:35 +0000 (15:41 +0000)
If filename with non-ASCII characters was encoded, resulting URL
contained non-ASCII characters. But URLToFileName() expected the
input to be in UTF-8. This change fixes it by using UTF-8 for
file: URLs in FileNameToURL() too.

Fixes #11491.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63763 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/common/filesys.cpp

index 1e3740864eb81db12d921843ada3c493e2477480..29e794e5705a9e8a795ac82f18b1d28b56e1cdb8 100644 (file)
@@ -694,7 +694,10 @@ wxString wxFileSystem::FileNameToURL(const wxFileName& filename)
     // here, in particular in GetRightLocation()
     url.Replace(wxT(":"), wxT("%3A"));
     url = wxT("file:") + url;
-    return url;
+
+    // Do wxURI- and common practice-compatible escaping: encode the string
+    // into UTF-8, then escape anything non-ASCII:
+    return wxURI(url).BuildURI();
 }