From 2e5608fa5c856c43b40499fb9fb004ecc9a1ba62 Mon Sep 17 00:00:00 2001 From: Austin English Date: Sun, 23 Oct 2016 16:15:45 -0500 Subject: [PATCH] advapi32: Add RegLoadAppKeyA/RegLoadAppKeyW stubs Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=41591 Signed-off-by: Austin English --- dlls/advapi32/advapi32.spec | 4 ++-- dlls/advapi32/registry.c | 24 ++++++++++++++++++++++ .../api-ms-win-core-registry-l1-1-0.spec | 4 ++-- .../api-ms-win-downlevel-advapi32-l1-1-0.spec | 4 ++-- dlls/kernelbase/kernelbase.spec | 4 ++-- include/winreg.h | 3 +++ 6 files changed, 35 insertions(+), 8 deletions(-) diff --git a/dlls/advapi32/advapi32.spec b/dlls/advapi32/advapi32.spec index e870a5d..042a523 100644 --- a/dlls/advapi32/advapi32.spec +++ b/dlls/advapi32/advapi32.spec @@ -648,8 +648,8 @@ @ stdcall RegGetKeySecurity(long long ptr ptr) @ stdcall RegGetValueA(long str str long ptr ptr ptr) @ stdcall RegGetValueW(long wstr wstr long ptr ptr ptr) -# @ stub RegLoadAppKeyA -# @ stub RegLoadAppKeyW +@ stdcall RegLoadAppKeyA(str ptr long long long) +@ stdcall RegLoadAppKeyW(wstr ptr long long long) @ stdcall RegLoadKeyA(long str str) @ stdcall RegLoadKeyW(long wstr wstr) @ stdcall RegLoadMUIStringA(long str str long ptr long str) diff --git a/dlls/advapi32/registry.c b/dlls/advapi32/registry.c index b537f69..012126d 100644 --- a/dlls/advapi32/registry.c +++ b/dlls/advapi32/registry.c @@ -3513,3 +3513,27 @@ LONG WINAPI RegDisableReflectionKey(HKEY base) FIXME("%p: stub\n", base); return ERROR_SUCCESS; } + +/****************************************************************************** + * RegLoadAppKeyA [ADVAPI32.@] + * + */ +LSTATUS WINAPI RegLoadAppKeyA(const char *file, HKEY *result, REGSAM sam, DWORD options, DWORD reserved) +{ + FIXME("%s %p %u %u %u: stub\n", wine_dbgstr_a(file), result, sam, options, reserved); + + *result = (HKEY)0xbeefcafe; + return ERROR_SUCCESS; +} + +/****************************************************************************** + * RegLoadAppKeyW [ADVAPI32.@] + * + */ +LSTATUS WINAPI RegLoadAppKeyW(const WCHAR *file, HKEY *result, REGSAM sam, DWORD options, DWORD reserved) +{ + FIXME("%s %p %u %u %u: stub\n", wine_dbgstr_w(file), result, sam, options, reserved); + + *result = (HKEY)0xbeefcafe; + return ERROR_SUCCESS; +} diff --git a/dlls/api-ms-win-core-registry-l1-1-0/api-ms-win-core-registry-l1-1-0.spec b/dlls/api-ms-win-core-registry-l1-1-0/api-ms-win-core-registry-l1-1-0.spec index 7a48e3b..cadcb25 100644 --- a/dlls/api-ms-win-core-registry-l1-1-0/api-ms-win-core-registry-l1-1-0.spec +++ b/dlls/api-ms-win-core-registry-l1-1-0/api-ms-win-core-registry-l1-1-0.spec @@ -17,8 +17,8 @@ @ stdcall RegGetKeySecurity(long long ptr ptr) advapi32.RegGetKeySecurity @ stdcall RegGetValueA(long str str long ptr ptr ptr) advapi32.RegGetValueA @ stdcall RegGetValueW(long wstr wstr long ptr ptr ptr) advapi32.RegGetValueW -@ stub RegLoadAppKeyA -@ stub RegLoadAppKeyW +@ stdcall RegLoadAppKeyA(wstr ptr long long long) advapi32.RegLoadAppKeyA +@ stdcall RegLoadAppKeyW(str ptr long long long) advapi32.RegLoadAppKeyW @ stdcall RegLoadKeyA(long str str) advapi32.RegLoadKeyA @ stdcall RegLoadKeyW(long wstr wstr) advapi32.RegLoadKeyW @ stdcall RegLoadMUIStringA(long str str long ptr long str) advapi32.RegLoadMUIStringA diff --git a/dlls/api-ms-win-downlevel-advapi32-l1-1-0/api-ms-win-downlevel-advapi32-l1-1-0.spec b/dlls/api-ms-win-downlevel-advapi32-l1-1-0/api-ms-win-downlevel-advapi32-l1-1-0.spec index 5bdad41..9af9003 100644 --- a/dlls/api-ms-win-downlevel-advapi32-l1-1-0/api-ms-win-downlevel-advapi32-l1-1-0.spec +++ b/dlls/api-ms-win-downlevel-advapi32-l1-1-0/api-ms-win-downlevel-advapi32-l1-1-0.spec @@ -102,8 +102,8 @@ @ stdcall RegGetKeySecurity(long long ptr ptr) advapi32.RegGetKeySecurity @ stdcall RegGetValueA(long str str long ptr ptr ptr) advapi32.RegGetValueA @ stdcall RegGetValueW(long wstr wstr long ptr ptr ptr) advapi32.RegGetValueW -@ stub RegLoadAppKeyA -@ stub RegLoadAppKeyW +@ stdcall RegLoadAppKeyA(wstr ptr long long long) advapi32.RegLoadAppKeyA +@ stdcall RegLoadAppKeyW(str ptr long long long) advapi32.RegLoadAppKeyW @ stdcall RegLoadKeyA(long str str) advapi32.RegLoadKeyA @ stdcall RegLoadKeyW(long wstr wstr) advapi32.RegLoadKeyW @ stdcall RegLoadMUIStringA(long str str long ptr long str) advapi32.RegLoadMUIStringA diff --git a/dlls/kernelbase/kernelbase.spec b/dlls/kernelbase/kernelbase.spec index f3b4fd1..d6ccbe2 100644 --- a/dlls/kernelbase/kernelbase.spec +++ b/dlls/kernelbase/kernelbase.spec @@ -1288,8 +1288,8 @@ # @ stub RegKrnResetAppKeyLoaded # @ stub RegKrnSetDllHasThreadStateGlobal # @ stub RegKrnSetTermsrvRegistryExtensionFlags -# @ stub RegLoadAppKeyA -# @ stub RegLoadAppKeyW +@ stdcall RegLoadAppKeyA(wstr ptr long long long) advapi32.RegLoadAppKeyA +@ stdcall RegLoadAppKeyW(str ptr long long long) advapi32.RegLoadAppKeyW @ stdcall -private RegLoadKeyA(long str str) kernel32.RegLoadKeyA @ stdcall -private RegLoadKeyW(long wstr wstr) kernel32.RegLoadKeyW @ stdcall -private RegLoadMUIStringA(long str str long ptr long str) kernel32.RegLoadMUIStringA diff --git a/include/winreg.h b/include/winreg.h index 51e9f02..5656eec 100644 --- a/include/winreg.h +++ b/include/winreg.h @@ -133,6 +133,9 @@ WINADVAPI LSTATUS WINAPI RegGetKeySecurity(HKEY,SECURITY_INFORMATION,PSECURITY WINADVAPI LSTATUS WINAPI RegGetValueA(HKEY,LPCSTR,LPCSTR,DWORD,LPDWORD,PVOID,LPDWORD); WINADVAPI LSTATUS WINAPI RegGetValueW(HKEY,LPCWSTR,LPCWSTR,DWORD,LPDWORD,PVOID,LPDWORD); #define RegGetValue WINELIB_NAME_AW(RegGetValue) +WINADVAPI LSTATUS WINAPI RegLoadAppKeyA(const char*,HKEY*,REGSAM,DWORD,DWORD); +WINADVAPI LSTATUS WINAPI RegLoadAppKeyW(const WCHAR*,HKEY*,REGSAM,DWORD,DWORD); +#define RegLoadAppKey WINELIB_NAME_AW(RegLoadAppKey) WINADVAPI LSTATUS WINAPI RegLoadKeyA(HKEY,LPCSTR,LPCSTR); WINADVAPI LSTATUS WINAPI RegLoadKeyW(HKEY,LPCWSTR,LPCWSTR); #define RegLoadKey WINELIB_NAME_AW(RegLoadKey) -- 1.9.1