Vincent Povirk : windowscodecs: Implement conversion to 32bppBGR.
Alexandre Julliard
julliard at winehq.org
Fri Aug 14 08:59:47 CDT 2009
Module: wine
Branch: master
Commit: 83807312b9cb269324b9eee78dd5f2e3354a26c9
URL: http://source.winehq.org/git/wine.git/?a=commit;h=83807312b9cb269324b9eee78dd5f2e3354a26c9
Author: Vincent Povirk <vincent at codeweavers.com>
Date: Thu Aug 13 12:46:44 2009 -0500
windowscodecs: Implement conversion to 32bppBGR.
---
dlls/windowscodecs/converter.c | 17 ++++++++++++++++-
1 files changed, 16 insertions(+), 1 deletions(-)
diff --git a/dlls/windowscodecs/converter.c b/dlls/windowscodecs/converter.c
index 0f851bc..efb997e 100644
--- a/dlls/windowscodecs/converter.c
+++ b/dlls/windowscodecs/converter.c
@@ -88,8 +88,23 @@ static HRESULT copypixels_to_32bppBGRA(struct FormatConverter *This, const WICRe
}
}
+static HRESULT copypixels_to_32bppBGR(struct FormatConverter *This, const WICRect *prc,
+ UINT cbStride, UINT cbBufferSize, BYTE *pbBuffer, enum pixelformat source_format)
+{
+ switch (source_format)
+ {
+ case format_32bppBGR:
+ case format_32bppBGRA:
+ if (prc)
+ return IWICBitmapSource_CopyPixels(This->source, prc, cbStride, cbBufferSize, pbBuffer);
+ return S_OK;
+ default:
+ return copypixels_to_32bppBGRA(This, prc, cbStride, cbBufferSize, pbBuffer, source_format);
+ }
+}
+
static const struct pixelformatinfo supported_formats[] = {
- {format_32bppBGR, &GUID_WICPixelFormat32bppBGR, NULL},
+ {format_32bppBGR, &GUID_WICPixelFormat32bppBGR, copypixels_to_32bppBGR},
{format_32bppBGRA, &GUID_WICPixelFormat32bppBGRA, copypixels_to_32bppBGRA},
{0}
};
More information about the wine-cvs
mailing list