wined3d: Only update the swizzle and use map for streams that are actually used in device_stream_info_from_strided().

Henri Verbeet hverbeet at codeweavers.com
Thu Apr 9 02:58:27 CDT 2009


This fixes a regression introduced by d7c7c768507a923902e9178f98343e22e4e22652
and exposed by ef2d70418383f03c6bf701caeb67129acc6d2453. Unfortunately having
EXT_vertex_array_bgra support masks the problem, which is why the regression
tests didn't catch it.
---
 dlls/wined3d/device.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
index f44d75d..d0fcf59 100644
--- a/dlls/wined3d/device.c
+++ b/dlls/wined3d/device.c
@@ -352,6 +352,8 @@ void device_stream_info_from_strided(IWineD3DDeviceImpl *This,
 
     for (i = 0; i < sizeof(stream_info->elements) / sizeof(*stream_info->elements); ++i)
     {
+        if (!stream_info->elements[i].format_desc) continue;
+
         if (!GL_SUPPORT(EXT_VERTEX_ARRAY_BGRA) && stream_info->elements[i].format_desc->format == WINED3DFMT_A8R8G8B8)
         {
             stream_info->swizzle_map |= 1 << i;
-- 
1.6.0.6



--------------060306090206020802000202--



More information about the wine-patches mailing list