summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrice Goglin <[email protected]>2007-04-08 18:52:31 +0200
committerBrice Goglin <[email protected]>2007-04-08 18:52:31 +0200
commit3832ecadae815bd59e03c55c3431e6565491a9e0 (patch)
tree70ebe7d438aa7a4bc67b6d2c06bcfaa3acc59977
parent285ed128abf8f08cc98f1e846082cc7d32be11e7 (diff)
Add 06_fix_texture_data_corruption.patch (closes: #412346)
-rw-r--r--debian/changelog1
-rw-r--r--debian/patches/06_fix_texture_data_corruption.patch23
-rw-r--r--debian/patches/series1
3 files changed, 25 insertions, 0 deletions
diff --git a/debian/changelog b/debian/changelog
index 1ece9610261..8598ffe93c8 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -8,6 +8,7 @@ mesa (6.5.2-4) UNRELEASED; urgency=low
* Split out libGLw libs and headers from libgl1-mesa-swx11 and ship both
static and shared libraries, creating libglw1-mesa and libglw1-mesa-dev
(closes: #374904).
+ * Add 06_fix_texture_data_corruption.patch (closes: #412346).
-- Brice Goglin <[email protected]> Fri, 30 Mar 2007 19:44:53 +0200
diff --git a/debian/patches/06_fix_texture_data_corruption.patch b/debian/patches/06_fix_texture_data_corruption.patch
new file mode 100644
index 00000000000..5bca17af5a4
--- /dev/null
+++ b/debian/patches/06_fix_texture_data_corruption.patch
@@ -0,0 +1,23 @@
+From: Michel Dänzer <[email protected]>
+Date: Thu, 14 Dec 2006 09:01:43 +0000 (+0100)
+Subject: _mesa_swizzle_ubyte_image: Only use single swizzle_copy call when strides match.
+X-Git-Url: http://gitweb.freedesktop.org/?p=mesa/mesa.git;a=commitdiff;h=9c09259b8bef8f120cc6f4bb1a44f0eae37d71b3
+
+_mesa_swizzle_ubyte_image: Only use single swizzle_copy call when strides match.
+
+This fixes texture data corruption with glTexSubimage (and probably glTexImage
+under some circumstances) with the texstore swizzle path.
+---
+
+--- a/src/mesa/main/texstore.c
++++ b/src/mesa/main/texstore.c
+@@ -808,7 +808,8 @@ _mesa_swizzle_ubyte_image(GLcontext *ctx
+
+ /* _mesa_printf("map %d %d %d %d\n", map[0], map[1], map[2], map[3]); */
+
+- if (srcRowStride == srcWidth * srcComponents &&
++ if (srcRowStride == dstRowStride &&
++ srcRowStride == srcWidth * srcComponents &&
+ dimensions < 3) {
+ /* 1 and 2D images only */
+ GLubyte *dstImage = (GLubyte *) dstAddr
diff --git a/debian/patches/series b/debian/patches/series
index 280a2f3548e..e4a761e6237 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -4,3 +4,4 @@
03_optional-progs-and-install.patch
04_cleanup-osmesa-configs.patch
05_static-nonpic.patch
+06_fix_texture_data_corruption.patch