Race condition in TemrinateThread
Geoffrey Hausheer
i8e7fkwmsl1 at phracturedblue.com
Tue Apr 2 19:50:06 CST 2002
I've discovered a race condition in TerminateThread. Basically, if a thread
is terminated before it has fully started, than the thread leaves a wine
process around when the process exits. I wouldn't have figured this out if
it weren't for the OpenThread code which was just added (it slowed down my
test enough that with '--winver win2000' the thread was able to start,
whereas with '--winver win98' it couldn't (due to testing OpenThread before
calling TerminateThread when in win2k mode).
It should be duplicatable by simply calling
thread=CreateThread();
TerminateThread(thread,0);
with no wait between them.
Anyhow, I really have no idea how to locate this, but I'd be happy to try if
someone can give me a hand.
Thanks,
.Geoff
More information about the wine-devel
mailing list