Jeremy White : kernel32: Advance over the input buffer when stripping ./.
Module: wine Branch: master Commit: 440030b93848d1c41f532cac21320f75a8c67231 URL: http://source.winehq.org/git/wine.git/?a=commit;h=440030b93848d1c41f532cac21... Author: Jeremy White <jwhite(a)codeweavers.com> Date: Mon Dec 21 15:20:08 2015 -0600 kernel32: Advance over the input buffer when stripping ./. This is the same fix for GetLongPathName that was contained in a fix for GetShortPathName in commit 9178d037d71e823f5d5eaa5008a3cdd574377bac. Signed-off-by: Jeremy White <jwhite(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/kernel32/path.c | 1 + dlls/kernel32/tests/path.c | 2 -- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/dlls/kernel32/path.c b/dlls/kernel32/path.c index ff94227..ec14b35 100644 --- a/dlls/kernel32/path.c +++ b/dlls/kernel32/path.c @@ -349,6 +349,7 @@ DWORD WINAPI GetLongPathNameW( LPCWSTR shortpath, LPWSTR longpath, DWORD longlen { tmplongpath[lp++] = *p++; tmplongpath[lp++] = *p++; + sp += 2; } for (; *p && *p != '/' && *p != '\\'; p++); tmplen = p - (shortpath + sp); diff --git a/dlls/kernel32/tests/path.c b/dlls/kernel32/tests/path.c index e90a260..4504603 100644 --- a/dlls/kernel32/tests/path.c +++ b/dlls/kernel32/tests/path.c @@ -2138,9 +2138,7 @@ static void test_relative_path(void) strcpy(buf, "deadbeef"); ret = pGetLongPathNameA(".\\..\\foo\\file", buf, MAX_PATH); - todo_wine ok(ret, "GetLongPathName error %d\n", GetLastError()); - todo_wine ok(!strcmp(buf, ".\\..\\foo\\file"), "expected .\\..\\foo\\file, got %s\n", buf); strcpy(buf, "deadbeef"); ret = GetShortPathNameA(".\\..\\foo\\file", buf, MAX_PATH);
participants (1)
-
Alexandre Julliard