From 3b9a6f799a6e2b89b9dfa3120be04d4f8ca71d40 Mon Sep 17 00:00:00 2001 From: Alex Ionescu Date: Sun, 6 Nov 2011 04:13:21 +0000 Subject: [PATCH] [KERNEL32]: The ANSI/OEM stubs were never initialized... it's a miracle this ever worked, probably because someone added a #define to at least one of them to hack it into working. Initialize the value snow, fixes boot. svn path=/trunk/; revision=54310 --- reactos/dll/win32/kernel32/client/file/file.c | 4 ++++ reactos/dll/win32/kernel32/client/utils.c | 5 ----- reactos/dll/win32/kernel32/include/kernel32.h | 7 +++++++ 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/reactos/dll/win32/kernel32/client/file/file.c b/reactos/dll/win32/kernel32/client/file/file.c index c3cd32c009b..066f3570072 100644 --- a/reactos/dll/win32/kernel32/client/file/file.c +++ b/reactos/dll/win32/kernel32/client/file/file.c @@ -20,6 +20,10 @@ DEBUG_CHANNEL(kernel32file); /* GLOBALS ******************************************************************/ BOOL bIsFileApiAnsi = TRUE; // set the file api to ansi or oem +PRTL_CONVERT_STRING Basep8BitStringToUnicodeString = RtlAnsiStringToUnicodeString; +PRTL_CONVERT_STRINGA BasepUnicodeStringTo8BitString = RtlUnicodeStringToAnsiString; +PRTL_COUNT_STRING BasepUnicodeStringTo8BitSize = BasepUnicodeStringToAnsiSize; +PRTL_COUNT_STRINGA Basep8BitStringToUnicodeSize = BasepAnsiStringToUnicodeSize; /* FUNCTIONS ****************************************************************/ diff --git a/reactos/dll/win32/kernel32/client/utils.c b/reactos/dll/win32/kernel32/client/utils.c index 9f5fd792aa2..a4fc1355518 100644 --- a/reactos/dll/win32/kernel32/client/utils.c +++ b/reactos/dll/win32/kernel32/client/utils.c @@ -21,11 +21,6 @@ /* GLOBALS ********************************************************************/ -PRTL_CONVERT_STRING Basep8BitStringToUnicodeString; -PRTL_CONVERT_STRINGA BasepUnicodeStringTo8BitString; -PRTL_COUNT_STRING BasepUnicodeStringTo8BitSize; -PRTL_COUNT_STRINGA Basep8BitStringToUnicodeSize; - UNICODE_STRING Restricted = RTL_CONSTANT_STRING(L"Restricted"); /* FUNCTIONS ******************************************************************/ diff --git a/reactos/dll/win32/kernel32/include/kernel32.h b/reactos/dll/win32/kernel32/include/kernel32.h index 5b29f9cadb5..a5ef8ceba8a 100644 --- a/reactos/dll/win32/kernel32/include/kernel32.h +++ b/reactos/dll/win32/kernel32/include/kernel32.h @@ -245,6 +245,13 @@ typedef NTSTATUS (NTAPI *PRTL_CONVERT_STRINGA)(IN PANSI_STRING AnsiString, typedef ULONG (NTAPI *PRTL_COUNT_STRINGA)(IN PANSI_STRING UnicodeString); +ULONG +NTAPI +BasepUnicodeStringToAnsiSize(IN PUNICODE_STRING String); + +ULONG +NTAPI +BasepAnsiStringToUnicodeSize(IN PANSI_STRING String); extern PRTL_CONVERT_STRING Basep8BitStringToUnicodeString; extern PRTL_CONVERT_STRINGA BasepUnicodeStringTo8BitString;