diff --git a/dlls/wintrust/crypt.c b/dlls/wintrust/crypt.c index 307eda32480..975d51f14fd 100644 --- a/dlls/wintrust/crypt.c +++ b/dlls/wintrust/crypt.c @@ -873,7 +873,7 @@ HANDLE WINAPI CryptCATOpen(WCHAR *filename, DWORD flags, HCRYPTPROV hProv, if (flags == CRYPTCAT_OPEN_EXISTING) open_mode = OPEN_EXISTING; if (flags & CRYPTCAT_OPEN_CREATENEW) - open_mode = CREATE_NEW; + open_mode = CREATE_ALWAYS; file = CreateFileW(filename, GENERIC_READ, FILE_SHARE_READ, NULL, open_mode, 0, NULL); if (file == INVALID_HANDLE_VALUE) return INVALID_HANDLE_VALUE; diff --git a/dlls/wintrust/tests/crypt.c b/dlls/wintrust/tests/crypt.c index e9928470332..1b436e9f4ab 100644 --- a/dlls/wintrust/tests/crypt.c +++ b/dlls/wintrust/tests/crypt.c @@ -451,7 +451,7 @@ static void test_CryptCATOpen(void) file = _wfopen(filename, L"r"); ret = fread(buffer, 1, sizeof(buffer), file); if (flags & CRYPTCAT_OPEN_CREATENEW) - todo_wine ok(!ret, "flags %#x: got %s\n", flags, debugstr_an(buffer, ret)); + ok(!ret, "flags %#x: got %s\n", flags, debugstr_an(buffer, ret)); else ok(ret == 9 && !strncmp(buffer, "test text", ret), "flags %#x: got %s\n", flags, debugstr_an(buffer, ret)); fclose(file);