[ros-diffs] [tfaber] 56490: [KERNEL32] - Fix SetCurrentDirectoryA to return success when setting the current directory again See issue #6874 for more details.

tfaber at svn.reactos.org tfaber at svn.reactos.org
Fri May 4 10:32:49 UTC 2012


Author: tfaber
Date: Fri May  4 10:32:49 2012
New Revision: 56490

URL: http://svn.reactos.org/svn/reactos?rev=56490&view=rev
Log:
[KERNEL32]
- Fix SetCurrentDirectoryA to return success when setting the current directory again
See issue #6874 for more details.

Modified:
    trunk/reactos/dll/win32/kernel32/client/path.c

Modified: trunk/reactos/dll/win32/kernel32/client/path.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/kernel32/client/path.c?rev=56490&r1=56489&r2=56490&view=diff
==============================================================================
--- trunk/reactos/dll/win32/kernel32/client/path.c [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/kernel32/client/path.c [iso-8859-1] Fri May  4 10:32:49 2012
@@ -1372,7 +1372,7 @@
     /* Create the string that describes the output buffer from the caller */
     CallerBuffer.Length = 0;
     CallerBuffer.Buffer = lpBuffer;
-    
+
     /* How much space does the caller have? */
     if (nBufferLength <= UNICODE_STRING_MAX_CHARS)
     {
@@ -1407,7 +1407,7 @@
                      Status);
             DbgPrint("    Path = %wZ\n", &PathString);
         }
-        
+
         /* Check if the failure was due to a small buffer */
         if (Status == STATUS_BUFFER_TOO_SMALL)
         {
@@ -1425,7 +1425,7 @@
     {
         /* It worked! Write the file part now */
         if (lpFilePart) *lpFilePart = &lpBuffer[FilePartSize];
-        
+
         /* Convert the final result length */
         Result = CallerBuffer.Length / sizeof(WCHAR);
     }
@@ -2205,7 +2205,7 @@
     DirName = Basep8BitStringToStaticUnicodeString(lpPathName);
     if (!DirName) return FALSE;
 
-    if (CheckForSameCurdir(DirName)) return FALSE;
+    if (CheckForSameCurdir(DirName)) return TRUE;
 
     Status = RtlSetCurrentDirectory_U(DirName);
     if (NT_SUCCESS(Status)) return TRUE;




More information about the Ros-diffs mailing list