Commit a15dbfac authored by Reece Dunn's avatar Reece Dunn Committed by Alexandre Julliard

crypt32: Fix CryptFreeTls when calling with a freed index.

parent 1b46c066
......@@ -161,8 +161,13 @@ BOOL WINAPI I_CryptSetTls(DWORD dwTlsIndex, LPVOID lpTlsValue)
BOOL WINAPI I_CryptFreeTls(DWORD dwTlsIndex, DWORD unknown)
{
BOOL ret;
TRACE("(%d, %d)\n", dwTlsIndex, unknown);
return TlsFree(dwTlsIndex);
ret = TlsFree(dwTlsIndex);
if (!ret) SetLastError( E_INVALIDARG );
return ret;
}
BOOL WINAPI I_CryptGetOssGlobal(DWORD x)
......
......@@ -254,10 +254,8 @@ static void test_cryptTls(void)
ret = pI_CryptFreeTls(index, 0);
ok(ret, "I_CryptFreeTls failed: %08x\n", GetLastError());
ret = pI_CryptFreeTls(index, 0);
/* Not sure if this fails because TlsFree should fail, so leave as
* todo for now.
*/
todo_wine ok(!ret && GetLastError() == E_INVALIDARG,
ok(!ret, "I_CryptFreeTls succeeded\n");
ok(GetLastError() == E_INVALIDARG,
"Expected E_INVALIDARG, got %08x\n", GetLastError());
}
/* Similar pass, check I_CryptDetachTls */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment