diff --git a/dlls/advapi32/registry.c b/dlls/advapi32/registry.c index 328ae39a3e4..97561e2559e 100644 --- a/dlls/advapi32/registry.c +++ b/dlls/advapi32/registry.c @@ -3280,40 +3280,12 @@ cleanup: /****************************************************************************** * RegLoadMUIStringA [ADVAPI32.@] * - * See RegLoadMUIStringW + * Not implemented on native. */ LSTATUS WINAPI RegLoadMUIStringA(HKEY hKey, LPCSTR pszValue, LPSTR pszBuffer, DWORD cbBuffer, LPDWORD pcbData, DWORD dwFlags, LPCSTR pszBaseDir) { - UNICODE_STRING valueW, baseDirW; - WCHAR *pwszBuffer; - DWORD cbData = cbBuffer * sizeof(WCHAR); - LONG result; - - valueW.Buffer = baseDirW.Buffer = pwszBuffer = NULL; - if (!RtlCreateUnicodeStringFromAsciiz(&valueW, pszValue) || - !RtlCreateUnicodeStringFromAsciiz(&baseDirW, pszBaseDir) || - !(pwszBuffer = heap_alloc(cbData))) - { - result = ERROR_NOT_ENOUGH_MEMORY; - goto cleanup; - } - - result = RegLoadMUIStringW(hKey, valueW.Buffer, pwszBuffer, cbData, NULL, dwFlags, - baseDirW.Buffer); - - if (result == ERROR_SUCCESS) { - cbData = WideCharToMultiByte(CP_ACP, 0, pwszBuffer, -1, pszBuffer, cbBuffer, NULL, NULL); - if (pcbData) - *pcbData = cbData; - } - -cleanup: - heap_free(pwszBuffer); - RtlFreeUnicodeString(&baseDirW); - RtlFreeUnicodeString(&valueW); - - return result; + return ERROR_CALL_NOT_IMPLEMENTED; } /****************************************************************************** diff --git a/dlls/advapi32/tests/registry.c b/dlls/advapi32/tests/registry.c index cadb936f2ae..a1fcb5e3e7a 100644 --- a/dlls/advapi32/tests/registry.c +++ b/dlls/advapi32/tests/registry.c @@ -3917,7 +3917,7 @@ static void test_RegLoadMUIString(void) wine_dbgstr_wn(bufW, size / sizeof(WCHAR)), wine_dbgstr_wn(textW, text_size / sizeof(WCHAR))); ret = pRegLoadMUIStringA(hkey, tz_value, buf, ARRAY_SIZE(buf), &size, 0, NULL); - todo_wine ok(ret == ERROR_CALL_NOT_IMPLEMENTED, "got %d, expected ERROR_CALL_NOT_IMPLEMENTED\n", ret); + ok(ret == ERROR_CALL_NOT_IMPLEMENTED, "got %d, expected ERROR_CALL_NOT_IMPLEMENTED\n", ret); /* change the current direcoty to other than system32 directory */ SetCurrentDirectoryA("\\"); @@ -3932,13 +3932,13 @@ static void test_RegLoadMUIString(void) wine_dbgstr_wn(bufW, size / sizeof(WCHAR)), wine_dbgstr_wn(textW, text_size / sizeof(WCHAR))); ret = pRegLoadMUIStringA(hkey, tz_value, buf, ARRAY_SIZE(buf), &size, 0, sysdir); - todo_wine ok(ret == ERROR_CALL_NOT_IMPLEMENTED, "got %d, expected ERROR_CALL_NOT_IMPLEMENTED\n", ret); + ok(ret == ERROR_CALL_NOT_IMPLEMENTED, "got %d, expected ERROR_CALL_NOT_IMPLEMENTED\n", ret); ret = pRegLoadMUIStringW(hkey, tz_valueW, bufW, ARRAY_SIZE(bufW), &size, 0, NULL); ok(ret == ERROR_FILE_NOT_FOUND, "got %d, expected ERROR_FILE_NOT_FOUND\n", ret); ret = pRegLoadMUIStringA(hkey, tz_value, buf, ARRAY_SIZE(buf), &size, 0, NULL); - todo_wine ok(ret == ERROR_CALL_NOT_IMPLEMENTED, "got %d, expected ERROR_CALL_NOT_IMPLEMENTED\n", ret); + ok(ret == ERROR_CALL_NOT_IMPLEMENTED, "got %d, expected ERROR_CALL_NOT_IMPLEMENTED\n", ret); RegCloseKey(hkey); SetCurrentDirectoryW(curdirW);