mirror of
git://source.winehq.org/git/wine.git
synced 2024-09-14 19:15:38 +00:00
A couple of small fixes to my bitmap patch.
This commit is contained in:
parent
3700777e9a
commit
84dd9feb05
|
@ -28,11 +28,6 @@
|
||||||
GC BITMAP_monoGC = 0, BITMAP_colorGC = 0;
|
GC BITMAP_monoGC = 0, BITMAP_colorGC = 0;
|
||||||
|
|
||||||
|
|
||||||
#define BITMAP_WIDTH_BYTES(width,bpp) \
|
|
||||||
(((bpp) == 24) ? (width) * 4 : ( ((bpp) == 15) ? (width) * 2 : \
|
|
||||||
((width) * (bpp) + 15) / 16 * 2 ))
|
|
||||||
|
|
||||||
|
|
||||||
/***********************************************************************
|
/***********************************************************************
|
||||||
* X11DRV_BITMAP_Init
|
* X11DRV_BITMAP_Init
|
||||||
*/
|
*/
|
||||||
|
@ -371,6 +366,8 @@ static LONG X11DRV_SetBitmapBits(BITMAPOBJ *bmp, void *bits, LONG count)
|
||||||
XImage *image;
|
XImage *image;
|
||||||
LPBYTE sbuf, tmpbuffer;
|
LPBYTE sbuf, tmpbuffer;
|
||||||
int w, h, pad, widthbytes;
|
int w, h, pad, widthbytes;
|
||||||
|
|
||||||
|
TRACE(x11drv, "(bmp=%p, bits=%p, count=%lx)\n", bmp, bits, count);
|
||||||
|
|
||||||
pad = BITMAP_GetBitsPadding(bmp->bitmap.bmWidth, bmp->bitmap.bmBitsPixel);
|
pad = BITMAP_GetBitsPadding(bmp->bitmap.bmWidth, bmp->bitmap.bmBitsPixel);
|
||||||
|
|
||||||
|
@ -381,9 +378,12 @@ static LONG X11DRV_SetBitmapBits(BITMAPOBJ *bmp, void *bits, LONG count)
|
||||||
|
|
||||||
widthbytes = (((bmp->bitmap.bmWidth * bmp->bitmap.bmBitsPixel) + 31) /
|
widthbytes = (((bmp->bitmap.bmWidth * bmp->bitmap.bmBitsPixel) + 31) /
|
||||||
32) * 4;
|
32) * 4;
|
||||||
height = bmp->bitmap.bmHeight;
|
height = count / bmp->bitmap.bmWidthBytes;
|
||||||
tmpbuffer = (LPBYTE)xmalloc(widthbytes*height);
|
tmpbuffer = (LPBYTE)xmalloc(widthbytes*height);
|
||||||
|
|
||||||
|
TRACE(x11drv, "h=%ld, w=%d, wb=%d\n", height, bmp->bitmap.bmWidth,
|
||||||
|
widthbytes);
|
||||||
|
|
||||||
EnterCriticalSection( &X11DRV_CritSection );
|
EnterCriticalSection( &X11DRV_CritSection );
|
||||||
image = XCreateImage( display, DefaultVisualOfScreen(screen),
|
image = XCreateImage( display, DefaultVisualOfScreen(screen),
|
||||||
bmp->bitmap.bmBitsPixel, ZPixmap, 0, tmpbuffer,
|
bmp->bitmap.bmBitsPixel, ZPixmap, 0, tmpbuffer,
|
||||||
|
|
|
@ -80,6 +80,9 @@ BOOL32 GRAPH_DrawBitmap( HDC32 hdc, HBITMAP32 hbitmap,
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* HACK for now */
|
||||||
|
if(!bmp->DDBitmap)
|
||||||
|
X11DRV_CreateBitmap( hbitmap );
|
||||||
pbitmap = bmp->DDBitmap->physBitmap;
|
pbitmap = bmp->DDBitmap->physBitmap;
|
||||||
|
|
||||||
xdest += dc->w.DCOrgX; ydest += dc->w.DCOrgY;
|
xdest += dc->w.DCOrgX; ydest += dc->w.DCOrgY;
|
||||||
|
@ -249,6 +252,10 @@ BOOL32 GRAPH_SelectClipMask( HDC32 hdc, HBITMAP32 hMonoBitmap, INT32 x, INT32 y)
|
||||||
GDI_HEAP_UNLOCK( hdc );
|
GDI_HEAP_UNLOCK( hdc );
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* HACK for now */
|
||||||
|
if(!bmp->DDBitmap)
|
||||||
|
X11DRV_CreateBitmap( hMonoBitmap );
|
||||||
pbitmap = bmp->DDBitmap->physBitmap;
|
pbitmap = bmp->DDBitmap->physBitmap;
|
||||||
TSXSetClipOrigin( display, dc->u.x.gc, dc->w.DCOrgX + x, dc->w.DCOrgY + y);
|
TSXSetClipOrigin( display, dc->u.x.gc, dc->w.DCOrgX + x, dc->w.DCOrgY + y);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue