[PATCH 2/5] wined3d: Only bother checking block alignment for compressed surfaces in wined3d_device_update_surface().

Henri Verbeet hverbeet at codeweavers.com
Mon Jun 20 16:21:10 CDT 2011


---
 dlls/wined3d/device.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
index 03f57ff..8a2058c 100644
--- a/dlls/wined3d/device.c
+++ b/dlls/wined3d/device.c
@@ -4810,8 +4810,9 @@ HRESULT CDECL wined3d_device_update_surface(struct wined3d_device *device,
     }
 
     /* NPOT block sizes would be silly. */
-    if ((update_w & (src_format->block_width - 1) || update_h & (src_format->block_height - 1))
-            && (src_w != update_w || dst_w != update_w || src_h != update_h || dst_h != update_h))
+    if ((src_format->flags & WINED3DFMT_FLAG_COMPRESSED)
+            && ((update_w & (src_format->block_width - 1) || update_h & (src_format->block_height - 1))
+            && (src_w != update_w || dst_w != update_w || src_h != update_h || dst_h != update_h)))
     {
         WARN("Update rect not block-aligned.\n");
         return WINED3DERR_INVALIDCALL;
-- 
1.7.3.4




More information about the wine-patches mailing list