[1/3] mscoree: Store the AppDomain from CorExeMain, for use in other functions.

Juan Lang juan.lang at gmail.com
Mon Aug 30 15:18:41 CDT 2010

> Yeah, I'm not really sure how this is supposed to work. load_mono()
> ensures that mono is loaded, so mono_handle should be set if it
> succeeds. Unless someone calls CorExitProcess in another thread and
> unloads it before we can grab the critical section again.
> Maybe load_mono should return without releasing the critical section,
> thus preventing that race? The caller will almost always want to
> proceed to create an AppDomain afterwards..

Ah, I see, you really did mean that.  No, I don't think leaving the
critical section open is the best thing.  I expect someone calling
CorExitProcess should expect problems if they continue to call mscoree
functions after that.

More information about the wine-devel mailing list