Author: jimtabor Date: Tue Sep 22 00:40:19 2015 New Revision: 69313
URL: http://svn.reactos.org/svn/reactos?rev=69313&view=rev Log: [RosApps|WineFile] Patch by Jared Smudde - Sync wine File with wine. See ROSAPPS-302.
Modified: trunk/rosapps/applications/winfile/splitpath.c trunk/rosapps/applications/winfile/winefile.c
Modified: trunk/rosapps/applications/winfile/splitpath.c URL: http://svn.reactos.org/svn/reactos/trunk/rosapps/applications/winfile/splitp... ============================================================================== --- trunk/rosapps/applications/winfile/splitpath.c [iso-8859-1] (original) +++ trunk/rosapps/applications/winfile/splitpath.c [iso-8859-1] Tue Sep 22 00:40:19 2015 @@ -35,9 +35,8 @@ } else if (drv) *drv = '\0';
- /* search for end of string or stream separator */ - for(end=path; *end && *end!=':'; ) - end++; + /* Don't parse colons as stream separators when splitting paths */ + end = path + lstrlenW(path);
/* search for begin of file extension */ for(p=end; p>path && *--p!='\' && *p!='/'; )
Modified: trunk/rosapps/applications/winfile/winefile.c URL: http://svn.reactos.org/svn/reactos/trunk/rosapps/applications/winfile/winefi... ============================================================================== --- trunk/rosapps/applications/winfile/winefile.c [iso-8859-1] (original) +++ trunk/rosapps/applications/winfile/winefile.c [iso-8859-1] Tue Sep 22 00:40:19 2015 @@ -1323,9 +1323,17 @@
if (path) { - lstrcpyW(child->path, path); - - _wsplitpath(path, drv, dir, name, ext); + int pathlen = strlenW(path); + const WCHAR *npath = path; + + if (path[0] == '"' && path[pathlen - 1] == '"') + { + npath++; + pathlen--; + } + lstrcpynW(child->path, npath, pathlen + 1); + + _wsplitpath(child->path, drv, dir, name, ext); }
lstrcpyW(child->filter_pattern, sAsterics); @@ -1757,11 +1765,11 @@
static void CheckForFileInfo(struct PropertiesDialog* dlg, HWND hwnd, LPCWSTR strFilename) { - static WCHAR sBackSlash[] = {'\','\0'}; - static WCHAR sTranslation[] = {'\','V','a','r','F','i','l','e','I','n','f','o','\','T','r','a','n','s','l','a','t','i','o','n','\0'}; - static WCHAR sStringFileInfo[] = {'\','S','t','r','i','n','g','F','i','l','e','I','n','f','o','\', + static const WCHAR sBackSlash[] = {'\','\0'}; + static const WCHAR sTranslation[] = {'\','V','a','r','F','i','l','e','I','n','f','o','\','T','r','a','n','s','l','a','t','i','o','n','\0'}; + static const WCHAR sStringFileInfo[] = {'\','S','t','r','i','n','g','F','i','l','e','I','n','f','o','\', '%','0','4','x','%','0','4','x','\','%','s','\0'}; - static WCHAR sFmt[] = {'%','d','.','%','d','.','%','d','.','%','d','\0'}; + static const WCHAR sFmt[] = {'%','d','.','%','d','.','%','d','.','%','d','\0'}; DWORD dwVersionDataLen = GetFileVersionInfoSizeW(strFilename, NULL);
if (dwVersionDataLen) {