Dimi Paun wrote:
We need to get rid of that seperation - either the DIB should be stored fully on X side (which would require to add some features to X) or fully on Wine side (by implementing a GDI renderer in Wine).
You can't have it fully on the X side, since you need direct memory access
Direct memory access can be done using X11 SHM, no?
(non-synchronized I might add) to the DIB data.
MSDN says:
Windows NT/2000/XP: You need to guarantee that the GDI subsystem has completed any drawing to a bitmap created by CreateDIBSection before you draw to the bitmap yourself. Access to the bitmap must be synchronized. Do this by calling the GdiFlush function. This applies to any use of the pointer to the bitmap bit values, including passing the pointer in calls to functions such as SetDIBits.
(and I assume they are talking to application developers, not to Wine devs... :)
Or is MSDN lying here?
Felix