diff --git a/dlls/advapi32/crypt.c b/dlls/advapi32/crypt.c index a6f8bc16332..26fda6616bb 100644 --- a/dlls/advapi32/crypt.c +++ b/dlls/advapi32/crypt.c @@ -1420,11 +1420,6 @@ BOOL WINAPI CryptGenKey (HCRYPTPROV hProv, ALG_ID Algid, DWORD dwFlags, HCRYPTKE TRACE("(0x%lx, %d, %08x, %p)\n", hProv, Algid, dwFlags, phKey); - if (!prov) - { - SetLastError(ERROR_INVALID_HANDLE); - return FALSE; - } if (!phKey || !prov || prov->dwMagic != MAGIC_CRYPTPROV) { SetLastError(ERROR_INVALID_PARAMETER); diff --git a/dlls/advapi32/tests/crypt.c b/dlls/advapi32/tests/crypt.c index 865ffa4cfe7..11802757602 100644 --- a/dlls/advapi32/tests/crypt.c +++ b/dlls/advapi32/tests/crypt.c @@ -238,6 +238,9 @@ static void test_incorrect_api_usage(void) if (!result) return; pCryptDestroyHash(hHash); + result = pCryptGenKey(0, CALG_RC4, 0, &hKey); + ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError()); + result = pCryptGenKey(hProv, CALG_RC4, 0, &hKey); ok (result, "%d\n", GetLastError()); if (!result) return;