[NTDLL]: Stubplement and export LdrFlushAlternateResourceModules needed for Windows...
authorHermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Sat, 5 Oct 2013 12:06:59 +0000 (12:06 +0000)
committerHermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Sat, 5 Oct 2013 12:06:59 +0000 (12:06 +0000)
[RTL]: Stubplement and export RtlConsoleMultiByteToUnicodeN (and fallback to RtlMultiByteToUnicodeN) needed for WIndows 2k3 winsrv.dll

CORE-7481 #comment LdrFlushAlternateResourceModules and RtlConsoleMultiByteToUnicodeN stubplemented in revision 60532.

svn path=/trunk/; revision=60532

reactos/dll/ntdll/def/ntdll.spec
reactos/dll/ntdll/ldr/ldrapi.c
reactos/lib/rtl/nls.c

index e4ab7e1..a8c3d92 100644 (file)
@@ -56,7 +56,7 @@
 @ stdcall LdrFindResourceDirectory_U(long ptr long ptr)
 ;@ stdcall LdrFindResourceEx_U ; 5.1 and higher
 @ stdcall LdrFindResource_U(long ptr long ptr)
-;@ stdcall LdrFlushAlternateResourceModules
+@ stdcall LdrFlushAlternateResourceModules()
 @ stdcall LdrGetDllHandle(wstr long ptr ptr)
 @ stdcall LdrGetDllHandleEx(long wstr long ptr ptr)
 @ stdcall LdrGetProcedureAddress(ptr ptr long ptr)
 @ stdcall RtlComputeCrc32(long ptr long)
 @ stdcall RtlComputeImportTableHash(ptr ptr long)
 @ stdcall RtlComputePrivatizedDllName_U(ptr ptr ptr)
-;@ stdcall RtlConsoleMultiByteToUnicodeN
+@ stdcall RtlConsoleMultiByteToUnicodeN(ptr long ptr ptr long ptr)
 @ stdcall RtlConvertExclusiveToShared(ptr)
 @ stdcall -arch=win32 -ret64 RtlConvertLongToLargeInteger(long)
 ;@ stdcall RtlConvertPropertyToVariant
index cfb3741..8c1db23 100644 (file)
@@ -1582,6 +1582,24 @@ LdrProcessRelocationBlock(IN ULONG_PTR Address,
     return LdrProcessRelocationBlockLongLong(Address, Count, TypeOffset, Delta);
 }
 
+/* FIXME: Add to ntstatus.mc */
+#define STATUS_MUI_FILE_NOT_FOUND        ((NTSTATUS)0xC00B0001L)
+
+/*
+ * @implemented
+ */
+NTSTATUS
+NTAPI
+LdrLoadAlternateResourceModule(IN PVOID Module,
+                               IN PWSTR Buffer)
+{
+    /* Is MUI Support enabled? */
+    if (!LdrAlternateResourcesEnabled()) return STATUS_SUCCESS;
+
+    UNIMPLEMENTED;
+    return STATUS_MUI_FILE_NOT_FOUND;
+}
+
 /*
  * @implemented
  */
@@ -1607,22 +1625,15 @@ LdrUnloadAlternateResourceModule(IN PVOID BaseAddress)
     return TRUE;
 }
 
-/* FIXME: Add to ntstatus.mc */
-#define STATUS_MUI_FILE_NOT_FOUND        ((NTSTATUS)0xC00B0001L)
-
 /*
- * @implemented
+ * @unimplemented
  */
-NTSTATUS
+BOOLEAN
 NTAPI
-LdrLoadAlternateResourceModule(IN PVOID Module,
-                               IN PWSTR Buffer)
+LdrFlushAlternateResourceModules(VOID)
 {
-    /* Is MUI Support enabled? */
-    if (!LdrAlternateResourcesEnabled()) return STATUS_SUCCESS;
-
     UNIMPLEMENTED;
-    return STATUS_MUI_FILE_NOT_FOUND;
+    return FALSE;
 }
 
 /* EOF */
index 8352ea1..49a8fa1 100644 (file)
@@ -288,6 +288,32 @@ RtlMultiByteToUnicodeN(
 }
 
 
+/*
+ * @unimplemented
+ */
+NTSTATUS
+NTAPI
+RtlConsoleMultiByteToUnicodeN(
+    OUT PWCHAR UnicodeString,
+    IN ULONG UnicodeSize,
+    OUT PULONG ResultSize,
+    IN PCSTR MbString,
+    IN ULONG MbSize,
+    OUT PULONG Unknown)
+{
+    PAGED_CODE_RTL();
+
+    UNIMPLEMENTED;
+    DPRINT1("RtlConsoleMultiByteToUnicodeN calling RtlMultiByteToUnicodeN\n");
+    *Unknown = 1;
+    return RtlMultiByteToUnicodeN(UnicodeString,
+                                  UnicodeSize,
+                                  ResultSize,
+                                  MbString,
+                                  MbSize);
+}
+
+
 
 /*
  * @implemented