Henri Verbeet : d2d1: Do not flip/ mirror the bitmap in d2d_d3d_render_target_DrawBitmap().

Alexandre Julliard julliard at wine.codeweavers.com
Fri Apr 24 08:48:51 CDT 2015


Module: wine
Branch: master
Commit: 4b3ca58fe969bd8b20358ed90dfe438e9bc03013
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=4b3ca58fe969bd8b20358ed90dfe438e9bc03013

Author: Henri Verbeet <hverbeet at codeweavers.com>
Date:   Thu Apr 23 20:23:24 2015 +0200

d2d1: Do not flip/mirror the bitmap in d2d_d3d_render_target_DrawBitmap().

---

 dlls/d2d1/render_target.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/dlls/d2d1/render_target.c b/dlls/d2d1/render_target.c
index cdf82bf..f8bdf95 100644
--- a/dlls/d2d1/render_target.c
+++ b/dlls/d2d1/render_target.c
@@ -777,12 +777,12 @@ static void STDMETHODCALLTYPE d2d_d3d_render_target_DrawBitmap(ID2D1RenderTarget
     bitmap_brush_desc.interpolationMode = interpolation_mode;
 
     brush_desc.opacity = opacity;
-    brush_desc.transform._11 = (d.right - d.left) / (s.right - s.left);
+    brush_desc.transform._11 = fabsf((d.right - d.left) / (s.right - s.left));
     brush_desc.transform._21 = 0.0f;
-    brush_desc.transform._31 = d.left - s.left;
+    brush_desc.transform._31 = min(d.left, d.right) - min(s.left, s.right);
     brush_desc.transform._12 = 0.0f;
-    brush_desc.transform._22 = (d.bottom - d.top) / (s.bottom - s.top);
-    brush_desc.transform._32 = d.top - s.top;
+    brush_desc.transform._22 = fabsf((d.bottom - d.top) / (s.bottom - s.top));
+    brush_desc.transform._32 = min(d.top, d.bottom) - min(s.top, s.bottom);
 
     if (FAILED(hr = ID2D1RenderTarget_CreateBitmapBrush(iface, bitmap, &bitmap_brush_desc, &brush_desc, &brush)))
     {




More information about the wine-cvs mailing list