From e5a573a28b2f14a4c6669cf03294302d4a9baa63 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 22 Jun 2004 21:56:44 +0000 Subject: [PATCH] don't treat filenames starting with dot as having empty name and extension equal to the full name without dot (was done like this only for Unix and VMS before, now do it for all platforms) git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27947 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/common/filename.cpp | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/common/filename.cpp b/src/common/filename.cpp index a746dd77b6..a74aa0fa4b 100644 --- a/src/common/filename.cpp +++ b/src/common/filename.cpp @@ -1676,18 +1676,17 @@ void wxFileName::SplitPath(const wxString& fullpathWithVolume, size_t posLastDot = fullpath.find_last_of(wxFILE_SEP_EXT); size_t posLastSlash = fullpath.find_last_of(sepPath); + // check whether this dot occurs at the very beginning of a path component if ( (posLastDot != wxString::npos) && - ((format == wxPATH_UNIX) || (format == wxPATH_VMS)) ) - { - if ( (posLastDot == 0) || - (fullpath[posLastDot - 1] == sepPath[0u] ) ) + (posLastDot == 0 || + IsPathSeparator(fullpath[posLastDot - 1]) || + (format == wxPATH_VMS && fullpath[posLastDot - 1] == _T(']'))) ) { - // under Unix and VMS, dot may be (and commonly is) the first + // dot may be (and commonly -- at least under Unix -- is) the first // character of the filename, don't treat the entire filename as // extension in this case posLastDot = wxString::npos; } - } // if we do have a dot and a slash, check that the dot is in the name part if ( (posLastDot != wxString::npos) && -- 2.47.2