Signed-off-by: Józef Kucia jkucia@codeweavers.com --- dlls/d3d9/device.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-)
diff --git a/dlls/d3d9/device.c b/dlls/d3d9/device.c index 067ea2bdc2d2..ed1fedf91db3 100644 --- a/dlls/d3d9/device.c +++ b/dlls/d3d9/device.c @@ -2732,8 +2732,7 @@ static void d3d9_device_upload_sysmem_vertex_buffers(struct d3d9_device *device, map = device->sysmem_vb; while (map) { - i = ffs(map) - 1; - map ^= 1u << i; + i = wined3d_bit_scan(&map);
if (FAILED(hr = wined3d_device_get_stream_source(device->wined3d_device, i, &dst_buffer, &offset, &stride))) ERR("Failed to get stream source.\n"); @@ -3111,8 +3110,7 @@ static HRESULT WINAPI d3d9_device_ProcessVertices(IDirect3DDevice9Ex *iface, map = device->sysmem_vb; while (map) { - i = ffs(map) - 1; - map ^= 1u << i; + i = wined3d_bit_scan(&map);
if (FAILED(wined3d_device_get_stream_source(device->wined3d_device, i, &wined3d_buffer, &offset, &stride))) @@ -3130,8 +3128,7 @@ static HRESULT WINAPI d3d9_device_ProcessVertices(IDirect3DDevice9Ex *iface, map = device->sysmem_vb; while (map) { - i = ffs(map) - 1; - map ^= 1u << i; + i = wined3d_bit_scan(&map);
if (FAILED(wined3d_device_get_stream_source(device->wined3d_device, i, &wined3d_buffer, &offset, &stride)))