Huw Davies : ole32: Add support for drawing the dib format.
Alexandre Julliard
julliard at wine.codeweavers.com
Wed Mar 25 10:13:22 CDT 2015
Module: wine
Branch: master
Commit: b4cd2c4dbb68e181d6124ef75329eac715a3977c
URL: http://source.winehq.org/git/wine.git/?a=commit;h=b4cd2c4dbb68e181d6124ef75329eac715a3977c
Author: Huw Davies <huw at codeweavers.com>
Date: Wed Mar 25 08:37:40 2015 +0000
ole32: Add support for drawing the dib format.
---
dlls/ole32/datacache.c | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/dlls/ole32/datacache.c b/dlls/ole32/datacache.c
index ff15d91..35b27de 100644
--- a/dlls/ole32/datacache.c
+++ b/dlls/ole32/datacache.c
@@ -1646,6 +1646,26 @@ static HRESULT WINAPI DataCache_Draw(
return S_OK;
}
+ case CF_DIB:
+ {
+ BITMAPFILEHEADER *file_head;
+ BITMAPINFO *info;
+ BYTE *bits;
+
+ if ((cache_entry->stgmedium.tymed != TYMED_HGLOBAL) ||
+ !((file_head = GlobalLock( cache_entry->stgmedium.u.hGlobal ))))
+ continue;
+
+ info = (BITMAPINFO *)(file_head + 1);
+ bits = (BYTE *) file_head + file_head->bfOffBits;
+ StretchDIBits( hdcDraw, lprcBounds->left, lprcBounds->top,
+ lprcBounds->right - lprcBounds->left, lprcBounds->bottom - lprcBounds->top,
+ 0, 0, info->bmiHeader.biWidth, info->bmiHeader.biHeight,
+ bits, info, DIB_RGB_COLORS, SRCCOPY );
+
+ GlobalUnlock( cache_entry->stgmedium.u.hGlobal );
+ return S_OK;
+ }
}
}
More information about the wine-cvs
mailing list