> There are a 3 places in the DDRAW dll, but most of them are in the
> X11DRV. Anyway, in the long term, I hope that (1) there will be no
> non-thread-safe Xlibs, and (2) we'll be able to play similar tricks
> with other libcs.
> 
> I am not sure that
> 
> #define LOCK_X11DRV() EnterCriticalSection( &X11DRV_CritSection )
> #define UNLOCK_X11DRV() LeaveCriticalSection( &X11DRV_CritSection )
> 
> s/EnterCriticalSection( &X11DRV_CritSection )/LOCK_X11DRV()/
> s/LeaveCriticalSection( &X11DRV_CritSection )/UNLOCK_X11DRV()/
> 
> will do the trick. 
> 
> Maybe we'll need to review all Enter/Leave blocks to see if we can 
> drop them when we have a reentrant X11 and glibc around...

Note that the X11DRV_CritSection is sometimes implicitly relied
upon to protect things other than the X11 libraries.  For example
the use of the large stack is protected only by this critical
section ...

If you drop the X11DRV_CritSection, you'll have to replace it
with appropriate mechanisms in these cases.


Bye,
Ulrich


-- 
  Dr. Ulrich Weigand
  [EMAIL PROTECTED]

Reply via email to