[prev in list] [next in list] [prev in thread] [next in thread] 

List:       wine-cvs
Subject:    Alexandre Julliard : gdi32: Use the faster memset for vertical gradients.
From:       Alexandre Julliard <julliard () winehq ! org>
Date:       2012-11-30 19:48:22
Message-ID: E1TeWZS-00062I-5s () wine ! codeweavers ! com
[Download RAW message or body]

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

Author: Alexandre Julliard <julliard@winehq.org>
Date:   Fri Nov 30 17:59:04 2012 +0100

gdi32: Use the faster memset for vertical gradients.

---

 dlls/gdi32/dibdrv/primitives.c |    7 +++----
 1 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/dlls/gdi32/dibdrv/primitives.c b/dlls/gdi32/dibdrv/primitives.c
index 77ac620..a8270ae 100644
--- a/dlls/gdi32/dibdrv/primitives.c
+++ b/dlls/gdi32/dibdrv/primitives.c
@@ -4520,7 +4520,7 @@ static BOOL gradient_rect_8888( const dib_info *dib, const RECT *rc, const TRIVE
         for (y = rc->top; y < rc->bottom; y++, ptr += dib->stride / 4)
         {
             DWORD val = gradient_rgb_8888( v, y - v[0].y, v[1].y - v[0].y );
-            for (x = 0; x < rc->right - rc->left; x++) ptr[x] = val;
+            memset_32( ptr, val, rc->right - rc->left );
         }
         break;
 
@@ -4570,7 +4570,7 @@ static BOOL gradient_rect_32( const dib_info *dib, const RECT *rc, const TRIVERT
         break;
 
     case GRADIENT_FILL_RECT_V:
-        for (y = rc->top; y < rc->bottom; y++)
+        for (y = rc->top; y < rc->bottom; y++, ptr += dib->stride / 4)
         {
             DWORD val = gradient_rgb_24( v, y - v[0].y, v[1].y - v[0].y );
             if (dib->red_len == 8 && dib->green_len == 8 && dib->blue_len == 8)
@@ -4582,8 +4582,7 @@ static BOOL gradient_rect_32( const dib_info *dib, const RECT *rc, const TRIVERT
                        put_field( val >> 8,  dib->green_shift, dib->green_len ) |
                        put_field( val,       dib->blue_shift,  dib->blue_len ));
 
-            for (x = 0; x < rc->right - rc->left; x++) ptr[x] = val;
-            ptr += dib->stride / 4;
+            memset_32( ptr, val, rc->right - rc->left );
         }
         break;
 



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic