Author: tfaber
Date: Fri Feb 20 07:03:00 2015
New Revision: 66365
URL:
http://svn.reactos.org/svn/reactos?rev=66365&view=rev
Log:
[KERNEL32]
- Make BaseSetLastNTError return the converted Win32 error code. This will determine the
upper 24 bits of EAX in functions that return BOOLEAN FALSE right after calling
BaseSetLastNTError, e.g. Wow64EnableWow64FsRedirection. Fixes installers using WiX Toolset
(e.g. VS2012 redist) on MSVC builds.
See
http://wixtoolset.org/issues/4681/ for the WiX bug that causes this.
CORE-8010
Modified:
trunk/reactos/dll/win32/kernel32/client/except.c
trunk/reactos/dll/win32/kernel32/include/kernel32.h
Modified: trunk/reactos/dll/win32/kernel32/client/except.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/kernel32/client/…
==============================================================================
--- trunk/reactos/dll/win32/kernel32/client/except.c [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/kernel32/client/except.c [iso-8859-1] Fri Feb 20 07:03:00
2015
@@ -682,12 +682,16 @@
/*
* @implemented
*/
-VOID
+DWORD
WINAPI
BaseSetLastNTError(IN NTSTATUS Status)
{
+ DWORD dwErrCode;
+
/* Convert from NT to Win32, then set */
- SetLastError(RtlNtStatusToDosError(Status));
+ dwErrCode = RtlNtStatusToDosError(Status);
+ SetLastError(dwErrCode);
+ return dwErrCode;
}
/*
Modified: trunk/reactos/dll/win32/kernel32/include/kernel32.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/kernel32/include…
==============================================================================
--- trunk/reactos/dll/win32/kernel32/include/kernel32.h [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/kernel32/include/kernel32.h [iso-8859-1] Fri Feb 20 07:03:00
2015
@@ -353,7 +353,7 @@
WINAPI
InitCommandLines(VOID);
-VOID
+DWORD
WINAPI
BaseSetLastNTError(IN NTSTATUS Status);