[Bug 3902] Unnormal slowness in Heroes 4 (X11DRV_BitBlt?)
Wine Bugs
wine-bugs at winehq.org
Thu Dec 1 05:01:47 CST 2005
http://bugs.winehq.org/show_bug.cgi?id=3902
------- Additional Comments From giulian2003 at hotmail.com 2005-01-12 05:01 -------
It seems that all GDI function have this form:
X11DRV_LockDIBSection/X11DRV_CoerceDIBSection -> X11DRV_DIB_Coerce
Modify DIB or X Server
X11DRV_UnlockDIBSection + sync between DIB and X Server
So, i think the best way to implement the change is to add 4 more implicit
paramenters to X11DRV_LockDIBSection, X11DRV_CoerceDIBSection,
X11DRV_DIB_Coerce, and have the GDI functions eventually pass the rectangle to
X11DRV_DIB_Coerce which will set them into the X_PHYSBITMAP structure.
Something like this:
static INT X11DRV_DIB_Coerce(X_PHYSBITMAP *physBitmap, INT req, BOOL lossy, INT
x=0, INT y=0, INT width=0, INT height=0);
or maybe
static INT X11DRV_DIB_Coerce(X_PHYSBITMAP *physBitmap, INT req, BOOL lossy,
XRectangle *mod_rect=NULL);
The second way would also require for the GDI functions to dinamically allocate
a XRectangle before passing it to X11DRV_LockDIBSection or
X11DRV_CoerceDIBSection so will require a bit more coding. Still not sure which
one is best ...
Anyway, enough talking .. i will try to do the change tonight if i won't be to
tired, and a patch will follow ...
--
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
More information about the wine-bugs
mailing list