Stefan Leichter : kernel32: Add stub for GetSystemPreferredUILanguages.
Alexandre Julliard
julliard at wine.codeweavers.com
Tue Jan 19 10:50:28 CST 2016
Module: wine
Branch: master
Commit: 1c3c9f06c517b6f5e35632d792b376c403ddb07e
URL: http://source.winehq.org/git/wine.git/?a=commit;h=1c3c9f06c517b6f5e35632d792b376c403ddb07e
Author: Stefan Leichter <Stefan.Leichter at camLine.com>
Date: Sun Jan 17 10:00:51 2016 +0100
kernel32: Add stub for GetSystemPreferredUILanguages.
Signed-off-by: Stefan Leichter <Stefan.Leichter at camLine.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
.../api-ms-win-core-localization-l1-2-0.spec | 2 +-
.../api-ms-win-core-localization-l1-2-1.spec | 2 +-
dlls/kernel32/kernel32.spec | 2 +-
dlls/kernel32/locale.c | 26 ++++++++++++++++++++++
include/winnls.h | 1 +
5 files changed, 30 insertions(+), 3 deletions(-)
diff --git a/dlls/api-ms-win-core-localization-l1-2-0/api-ms-win-core-localization-l1-2-0.spec b/dlls/api-ms-win-core-localization-l1-2-0/api-ms-win-core-localization-l1-2-0.spec
index 60da5fe..bdbcbb8 100644
--- a/dlls/api-ms-win-core-localization-l1-2-0/api-ms-win-core-localization-l1-2-0.spec
+++ b/dlls/api-ms-win-core-localization-l1-2-0/api-ms-win-core-localization-l1-2-0.spec
@@ -23,7 +23,7 @@
@ stub GetProcessPreferredUILanguages
@ stdcall GetSystemDefaultLCID() kernel32.GetSystemDefaultLCID
@ stdcall GetSystemDefaultLangID() kernel32.GetSystemDefaultLangID
-@ stub GetSystemPreferredUILanguages
+@ stdcall GetSystemPreferredUILanguages(long ptr ptr ptr) kernel32.GetSystemPreferredUILanguages
@ stdcall GetThreadLocale() kernel32.GetThreadLocale
@ stdcall GetThreadPreferredUILanguages(long ptr ptr ptr) kernel32.GetThreadPreferredUILanguages
@ stdcall GetThreadUILanguage() kernel32.GetThreadUILanguage
diff --git a/dlls/api-ms-win-core-localization-l1-2-1/api-ms-win-core-localization-l1-2-1.spec b/dlls/api-ms-win-core-localization-l1-2-1/api-ms-win-core-localization-l1-2-1.spec
index 3a29cb7..98ec923 100644
--- a/dlls/api-ms-win-core-localization-l1-2-1/api-ms-win-core-localization-l1-2-1.spec
+++ b/dlls/api-ms-win-core-localization-l1-2-1/api-ms-win-core-localization-l1-2-1.spec
@@ -24,7 +24,7 @@
@ stub GetProcessPreferredUILanguages
@ stdcall GetSystemDefaultLCID() kernel32.GetSystemDefaultLCID
@ stdcall GetSystemDefaultLangID() kernel32.GetSystemDefaultLangID
-@ stub GetSystemPreferredUILanguages
+@ stdcall GetSystemPreferredUILanguages(long ptr ptr ptr) kernel32.GetSystemPreferredUILanguages
@ stdcall GetThreadLocale() kernel32.GetThreadLocale
@ stdcall GetThreadPreferredUILanguages(long ptr ptr ptr) kernel32.GetThreadPreferredUILanguages
@ stdcall GetThreadUILanguage() kernel32.GetThreadUILanguage
diff --git a/dlls/kernel32/kernel32.spec b/dlls/kernel32/kernel32.spec
index 9fecbd7..9171558 100644
--- a/dlls/kernel32/kernel32.spec
+++ b/dlls/kernel32/kernel32.spec
@@ -824,7 +824,7 @@
@ stdcall GetSystemFirmwareTable(long long ptr long)
@ stdcall GetSystemInfo(ptr)
@ stdcall GetSystemPowerStatus(ptr)
-# @ stub GetSystemPreferredUILanguages
+@ stdcall GetSystemPreferredUILanguages(long ptr ptr ptr)
@ stdcall GetSystemRegistryQuota(ptr ptr)
@ stdcall GetSystemTime(ptr)
@ stdcall GetSystemTimeAdjustment(ptr ptr ptr)
diff --git a/dlls/kernel32/locale.c b/dlls/kernel32/locale.c
index 5e7ca90..8ecbb0c 100644
--- a/dlls/kernel32/locale.c
+++ b/dlls/kernel32/locale.c
@@ -1049,6 +1049,32 @@ INT WINAPI GetSystemDefaultLocaleName(LPWSTR localename, INT len)
}
/***********************************************************************
+ * GetSystemPreferredUILanguages (KERNEL32.@)
+ */
+BOOL WINAPI GetSystemPreferredUILanguages(DWORD flags, ULONG* count, WCHAR* buffer, ULONG* size)
+{
+ if (flags & ~(MUI_LANGUAGE_NAME | MUI_LANGUAGE_ID | MUI_MACHINE_LANGUAGE_SETTINGS))
+ {
+ SetLastError(ERROR_INVALID_PARAMETER);
+ return FALSE;
+ }
+ if ((flags & MUI_LANGUAGE_NAME) && (flags & MUI_LANGUAGE_ID))
+ {
+ SetLastError(ERROR_INVALID_PARAMETER);
+ return FALSE;
+ }
+ if (*size && !buffer)
+ {
+ SetLastError(ERROR_INVALID_PARAMETER);
+ return FALSE;
+ }
+
+ FIXME("(0x%x %p %p %p) stub\n", flags, count, buffer, size);
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return FALSE;
+}
+
+/***********************************************************************
* GetUserDefaultUILanguage (KERNEL32.@)
*
* Get the default user interface language Id for the current user.
diff --git a/include/winnls.h b/include/winnls.h
index 4b4eb77..603c408 100644
--- a/include/winnls.h
+++ b/include/winnls.h
@@ -906,6 +906,7 @@ WINBASEAPI BOOL WINAPI GetStringTypeExW(LCID,DWORD,LPCWSTR,INT,LPWORD);
WINBASEAPI LANGID WINAPI GetSystemDefaultLangID(void);
WINBASEAPI LCID WINAPI GetSystemDefaultLCID(void);
WINBASEAPI LANGID WINAPI GetSystemDefaultUILanguage(void);
+WINBASEAPI BOOL WINAPI GetSystemPreferredUILanguages(DWORD,ULONG*,WCHAR*,ULONG*);
WINBASEAPI LCID WINAPI GetThreadLocale(void);
WINBASEAPI INT WINAPI GetTimeFormatA(LCID,DWORD,const SYSTEMTIME*,LPCSTR,LPSTR,INT);
WINBASEAPI INT WINAPI GetTimeFormatEx(LPCWSTR,DWORD,const SYSTEMTIME*,LPCWSTR,LPWSTR,INT);
More information about the wine-cvs
mailing list