X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e2b87f38d9092b56591728558f2cc13cac6a58af..878711c01c1b9ad5b97d35f379a048b8ce1bfb49:/src/common/fs_zip.cpp?ds=sidebyside diff --git a/src/common/fs_zip.cpp b/src/common/fs_zip.cpp index fd0024f5c9..4d9d3aa3c5 100644 --- a/src/common/fs_zip.cpp +++ b/src/common/fs_zip.cpp @@ -39,9 +39,9 @@ #endif -//-------------------------------------------------------------------------------- +//---------------------------------------------------------------------------- // wxZipFSHandler -//-------------------------------------------------------------------------------- +//---------------------------------------------------------------------------- @@ -87,6 +87,14 @@ wxFSFile* wxZipFSHandler::OpenFile(wxFileSystem& WXUNUSED(fs), const wxString& l return NULL; } + if (right.Contains(wxT("./"))) + { + if (right.GetChar(0) != wxT('/')) right = wxT('/') + right; + wxFileName rightPart(right, wxPATH_UNIX); + rightPart.Normalize(wxPATH_NORM_DOTS, wxT("/"), wxPATH_UNIX); + right = rightPart.GetFullPath(wxPATH_UNIX); + } + if (right.GetChar(0) == wxT('/')) right = right.Mid(1); wxFileName leftFilename = wxFileSystem::URLToFileName(left);