Henri Verbeet : ddraw: Use wined3d_bit_scan() in viewport_alloc_active_light_index().

Alexandre Julliard julliard at winehq.org
Mon Jul 1 15:15:14 CDT 2019


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

Author: Henri Verbeet <hverbeet at codeweavers.com>
Date:   Fri Jun 28 15:12:21 2019 +0430

ddraw: Use wined3d_bit_scan() in viewport_alloc_active_light_index().

Signed-off-by: Henri Verbeet <hverbeet at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/ddraw/viewport.c | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/dlls/ddraw/viewport.c b/dlls/ddraw/viewport.c
index e94c4b8..556783a 100644
--- a/dlls/ddraw/viewport.c
+++ b/dlls/ddraw/viewport.c
@@ -152,15 +152,10 @@ void viewport_alloc_active_light_index(struct d3d_light *light)
             }
         }
     }
-    map = vp->map_lights;
-    assert(vp->active_lights_count < DDRAW_MAX_ACTIVE_LIGHTS && map != ~0u);
 
-    i = 0;
-    while (map & 1)
-    {
-        map >>= 1;
-        ++i;
-    }
+    map = ~vp->map_lights;
+    assert(vp->active_lights_count < DDRAW_MAX_ACTIVE_LIGHTS && map);
+    i = wined3d_bit_scan(&map);
     light->active_light_index = i + 1;
     ++vp->active_lights_count;
     vp->map_lights |= 1u << i;




More information about the wine-cvs mailing list