http://bugs.winehq.com/show_bug.cgi?id=885
------- Additional Comments From dclark@akamail.com 2002-07-18 22:56 ------- Yep, it looks like that for me. I added a trace to check the parameters to XCopyArea, and they look ok. case SRCCOPY: /* 0xcc */ if (dcSrc->bitsPerPixel == dcDst->bitsPerPixel) { TRACE(" src_xy=%d,%d size=%d,%d dst_xy=%d,%d\n", physDevSrc->org.x + visRectSrc.left, physDevSrc->org.y + visRectSrc.top, width, height, physDevDst->org.x + visRectDst.left, physDevDst->org.y + visRectDst.top );
I think what is happening is that the first bitblt is doing the scroll on an internal image. trace:bitblt:BitBlt hdcSrc=08dc 38,0 24 bpp->hdcDest=08dc 0,0 570x392x24 rop=cc0020 ... trace:bitblt:BITBLT_InternalStretchBlt src_xy=38,0 size=570,392 dst_xy=0,0 And then the second copies the entire image to the screen trace:bitblt:StretchBlt 08dc 0,0 608x392x24 -> 0894 0,0 608x392x24 rop=cc0020 ... trace:bitmap:X11DRV_DIB_SetImageBits XPutImage(44041069,0x8079818,0x80b3ec0,0,0,0,0,608,436) ... trace:bitblt:BITBLT_InternalStretchBlt src_xy=0,0 size=608,392 dst_xy=16,22 The dst_xy on this second one is offset to accomodate the frame (I think).
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT http://bugs.winehq.com/show_bug.cgi?id=885. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE.