X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/7da60d7c18d4b7a9ed586208cc6174b87b55db91..df1f4832e5e08438255594172b4c2b31b34f6453:/src/common/filename.cpp diff --git a/src/common/filename.cpp b/src/common/filename.cpp index 1fd38e5e25..18b8b2759e 100644 --- a/src/common/filename.cpp +++ b/src/common/filename.cpp @@ -453,6 +453,18 @@ void wxFileName::Assign(const wxString& fullpathOrig, Assign(volume, path, name, ext, format); } +void wxFileName::Assign(const wxString& pathOrig, + const wxString& name, + const wxString& ext, + wxPathFormat format) +{ + wxString volume, + path; + SplitVolume(pathOrig, &volume, &path, format); + + Assign(volume, path, name, ext, format); +} + void wxFileName::AssignDir(const wxString& dir, wxPathFormat format) { Assign(dir, _T(""), format); @@ -1181,17 +1193,15 @@ bool wxFileName::IsCaseSensitive( wxPathFormat format ) return GetFormat(format) == wxPATH_UNIX; } -// If asserts, wxPathFormat has been changed. -wxCOMPILE_TIME_ASSERT(wxPATH_MAX == 5, wxPathFormatChanged); - /* static */ wxString wxFileName::GetForbiddenChars(wxPathFormat format) { // Inits to forbidden characters that are common to (almost) all platforms. wxString strForbiddenChars = wxT("*?"); - // In case of a new path format + // If asserts, wxPathFormat has been changed. In case of a new path format // addition, the following code might have to be updated. + wxCOMPILE_TIME_ASSERT(wxPATH_MAX == 5, wxPathFormatChanged); switch ( GetFormat(format) ) { default : @@ -1279,10 +1289,8 @@ wxString wxFileName::GetPathTerminators(wxPathFormat format) bool wxFileName::IsPathSeparator(wxChar ch, wxPathFormat format) { // wxString::Find() doesn't work as expected with NUL - it will always find - // it, so it is almost surely a bug if this function is called with NUL arg - wxASSERT_MSG( ch != _T('\0'), _T("shouldn't be called with NUL") ); - - return GetPathSeparators(format).Find(ch) != wxNOT_FOUND; + // it, so test for it separately + return ch != _T('\0') && GetPathSeparators(format).Find(ch) != wxNOT_FOUND; } // ----------------------------------------------------------------------------