summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAdam Jackson <ajax@redhat.com>2014-03-21 11:33:26 -0400
committerAdam Jackson <ajax@redhat.com>2014-03-21 11:33:26 -0400
commit0411aeba5eff20ddb14c33f00ecb4d2b628717c7 (patch)
tree1acad282fa85257eb10c5c3577eda75b235665fe
parentf35b48660114514da475c533420fcbfb56f6224b (diff)
downloadmesa-0411aeba5eff20ddb14c33f00ecb4d2b628717c7.tar.gz
mesa-0411aeba5eff20ddb14c33f00ecb4d2b628717c7.tar.xz
mesa-0411aeba5eff20ddb14c33f00ecb4d2b628717c7.zip
mesa: Don't optimize out glClear if drawbuffer size is 0x0 (fdo #75797)
-rw-r--r--0001-mesa-Don-t-optimize-out-glClear-if-drawbuffer-size-i.patch34
-rw-r--r--mesa.spec8
2 files changed, 41 insertions, 1 deletions
diff --git a/0001-mesa-Don-t-optimize-out-glClear-if-drawbuffer-size-i.patch b/0001-mesa-Don-t-optimize-out-glClear-if-drawbuffer-size-i.patch
new file mode 100644
index 0000000..7084ab7
--- /dev/null
+++ b/0001-mesa-Don-t-optimize-out-glClear-if-drawbuffer-size-i.patch
@@ -0,0 +1,34 @@
+From 1fb986f3a722e8476af90b5ab512e495f0caf10f Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Kristian=20H=C3=B8gsberg?= <krh@bitplanet.net>
+Date: Thu, 6 Mar 2014 16:58:32 -0800
+Subject: [PATCH] mesa: Don't optimize out glClear() if drawbuffer size is 0x0
+
+The driver acquires buffer lazily and may not yet have buffers for
+a newly current drawable. In that case the drawable size is 0x0 but
+we still need to call into the driver and make it fetch buffers and get
+the drawable size.
+
+https://bugs.freedesktop.org/show_bug.cgi?id=75797
+---
+ src/mesa/main/clear.c | 5 -----
+ 1 file changed, 5 deletions(-)
+
+diff --git a/src/mesa/main/clear.c b/src/mesa/main/clear.c
+index 077c5fc..c3f7474 100644
+--- a/src/mesa/main/clear.c
++++ b/src/mesa/main/clear.c
+@@ -155,11 +155,6 @@ _mesa_Clear( GLbitfield mask )
+ return;
+ }
+
+- if (ctx->DrawBuffer->Width == 0 || ctx->DrawBuffer->Height == 0 ||
+- ctx->DrawBuffer->_Xmin >= ctx->DrawBuffer->_Xmax ||
+- ctx->DrawBuffer->_Ymin >= ctx->DrawBuffer->_Ymax)
+- return;
+-
+ if (ctx->RasterDiscard)
+ return;
+
+--
+1.8.5.3
+
diff --git a/mesa.spec b/mesa.spec
index 93fc44d..a92b34a 100644
--- a/mesa.spec
+++ b/mesa.spec
@@ -51,7 +51,7 @@
Summary: Mesa graphics libraries
Name: mesa
Version: 10.1
-Release: 3.%{gitdate}%{?dist}
+Release: 4.%{gitdate}%{?dist}
License: MIT
Group: System Environment/Libraries
URL: http://www.mesa3d.org
@@ -73,6 +73,8 @@ Patch12: mesa-8.0.1-fix-16bpp.patch
Patch15: mesa-9.2-hardware-float.patch
Patch20: mesa-9.2-evergreen-big-endian.patch
+# https://bugs.freedesktop.org/show_bug.cgi?id=75797#c1
+Patch21: 0001-mesa-Don-t-optimize-out-glClear-if-drawbuffer-size-i.patch
# https://bugs.freedesktop.org/show_bug.cgi?id=73512
Patch99: 0001-opencl-use-versioned-.so-in-mesa.icd.patch
@@ -328,6 +330,7 @@ grep -q ^/ src/gallium/auxiliary/vl/vl_decoder.c && exit 1
%patch15 -p1 -b .hwfloat
%patch20 -p1 -b .egbe
+%patch21 -p1 -b .clear
%if 0%{?with_opencl}
%patch99 -p1 -b .icd
@@ -635,6 +638,9 @@ rm -rf $RPM_BUILD_ROOT
%endif
%changelog
+* Fri Mar 21 2014 Adam Jackson <ajax@redhat.com> 10.1-4.20140305
+- mesa: Don't optimize out glClear if drawbuffer size is 0x0 (fdo #75797)
+
* Wed Mar 19 2014 Dave Airlie <airlied@redhat.com> 10.1-3.20140305
- rebuild against backported llvm 3.4-5 for radeonsi GL 3.3 support.