http://bugs.winehq.org/show_bug.cgi?id=21568
--- Comment #1 from Juan Lang juan_lang@yahoo.com 2010-02-01 14:11:41 --- It's hard to diagnose this, because your backtrace doesn't have debug symbols for the test files. Still, I'll take a guess that it's this one, in test_incorrect_api_usage():
result = pCryptDestroyKey(hKey2); ok (result, "%d\n", GetLastError());
dwTemp = CRYPT_MODE_ECB; result = pCryptSetKeyParam(hKey2, KP_MODE, (BYTE*)&dwTemp, sizeof(DWORD)); ok (!result && GetLastError() == ERROR_INVALID_PARAMETER, "%d\n", GetLastError());
That is, a destroyed key is than used. The bad address is 0xfeeefeee, which corresponds to the free filler (in dlls/ntdll/heap.c): #define ARENA_FREE_FILLER 0xfeeefeee
Basically, I think this is a false positive. An app was doing something bogus in the first place, and we wrote a test that mimics its behavior. I'm not sure how to fix the tests to pass in this case.