10.2.3 upstream release
Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
This commit is contained in:
parent
7526e1bbd7
commit
17dc7f453b
1
.gitignore
vendored
1
.gitignore
vendored
@ -76,3 +76,4 @@ mesa-20100720.tar.bz2
|
|||||||
/mesa-20140531.tar.xz
|
/mesa-20140531.tar.xz
|
||||||
/mesa-20140608.tar.xz
|
/mesa-20140608.tar.xz
|
||||||
/mesa-20140625.tar.xz
|
/mesa-20140625.tar.xz
|
||||||
|
/mesa-20140711.tar.xz
|
||||||
|
@ -1,72 +0,0 @@
|
|||||||
From b4dcf87f34f68111acd9d364739938721fc692f4 Mon Sep 17 00:00:00 2001
|
|
||||||
From: "Jasper St. Pierre" <jstpierre@mecheye.net>
|
|
||||||
Date: Tue, 24 Jun 2014 13:43:53 -0400
|
|
||||||
Subject: [PATCH] glxext: Send the Drawable's ID in the GLX_BufferSwapComplete
|
|
||||||
event
|
|
||||||
|
|
||||||
While the official INTEL_swap_event specification says that the drawable
|
|
||||||
field should contain the GLXDrawable, not the Drawable, the existing
|
|
||||||
DRI2 code in dri2.c that translates from DRI2_BufferSwapComplete sends out
|
|
||||||
GLX_BufferSwapComplete with the Drawable's ID, so existing codebases
|
|
||||||
like Clutter/Cogl rely on getting the Drawable.
|
|
||||||
|
|
||||||
Match DRI2's error here and stuff the event with the X Drawable, not
|
|
||||||
the GLX drawable.
|
|
||||||
|
|
||||||
This fixes apps seeing wrong drawables through an indirect GLX context
|
|
||||||
or with DRI3, which uses the GLX_BufferSwapComplete event directly on
|
|
||||||
the wire instead of translates Present in mesa.
|
|
||||||
|
|
||||||
At the same time, also modify the structure for the event to make sure
|
|
||||||
that clients don't make the same mistake. This is not an API or ABI
|
|
||||||
break, as GLXDrawable and Drawable are both typedefs for XID.
|
|
||||||
|
|
||||||
Signed-off-by: Jasper St. Pierre <jstpierre@mecheye.net>
|
|
||||||
Reviewed-by: Axel Davy <axel.davy@ens.fr>
|
|
||||||
Cc: "10.1 10.2" <mesa-stable@lists.freedesktop.org>
|
|
||||||
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
||||||
---
|
|
||||||
include/GL/glx.h | 2 +-
|
|
||||||
src/glx/glxext.c | 9 +++++----
|
|
||||||
2 files changed, 6 insertions(+), 5 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/include/GL/glx.h b/include/GL/glx.h
|
|
||||||
index 234abc0..78f5052 100644
|
|
||||||
--- a/include/GL/glx.h
|
|
||||||
+++ b/include/GL/glx.h
|
|
||||||
@@ -518,7 +518,7 @@ typedef struct {
|
|
||||||
unsigned long serial; /* # of last request processed by server */
|
|
||||||
Bool send_event; /* true if this came from a SendEvent request */
|
|
||||||
Display *display; /* Display the event was read from */
|
|
||||||
- GLXDrawable drawable; /* drawable on which event was requested in event mask */
|
|
||||||
+ Drawable drawable; /* drawable on which event was requested in event mask */
|
|
||||||
int event_type;
|
|
||||||
int64_t ust;
|
|
||||||
int64_t msc;
|
|
||||||
diff --git a/src/glx/glxext.c b/src/glx/glxext.c
|
|
||||||
index 94582f6..68c359e 100644
|
|
||||||
--- a/src/glx/glxext.c
|
|
||||||
+++ b/src/glx/glxext.c
|
|
||||||
@@ -134,14 +134,15 @@ __glXWireToEvent(Display *dpy, XEvent *event, xEvent *wire)
|
|
||||||
GLXBufferSwapComplete *aevent = (GLXBufferSwapComplete *)event;
|
|
||||||
xGLXBufferSwapComplete2 *awire = (xGLXBufferSwapComplete2 *)wire;
|
|
||||||
struct glx_drawable *glxDraw = GetGLXDrawable(dpy, awire->drawable);
|
|
||||||
- aevent->event_type = awire->event_type;
|
|
||||||
- aevent->drawable = awire->drawable;
|
|
||||||
- aevent->ust = ((CARD64)awire->ust_hi << 32) | awire->ust_lo;
|
|
||||||
- aevent->msc = ((CARD64)awire->msc_hi << 32) | awire->msc_lo;
|
|
||||||
|
|
||||||
if (!glxDraw)
|
|
||||||
return False;
|
|
||||||
|
|
||||||
+ aevent->event_type = awire->event_type;
|
|
||||||
+ aevent->drawable = glxDraw->xDrawable;
|
|
||||||
+ aevent->ust = ((CARD64)awire->ust_hi << 32) | awire->ust_lo;
|
|
||||||
+ aevent->msc = ((CARD64)awire->msc_hi << 32) | awire->msc_lo;
|
|
||||||
+
|
|
||||||
if (awire->sbc < glxDraw->lastEventSbc)
|
|
||||||
glxDraw->eventSbcWrap += 0x100000000;
|
|
||||||
glxDraw->lastEventSbc = awire->sbc;
|
|
||||||
--
|
|
||||||
2.0.0
|
|
||||||
|
|
12
mesa.spec
12
mesa.spec
@ -47,13 +47,13 @@
|
|||||||
|
|
||||||
%define _default_patch_fuzz 2
|
%define _default_patch_fuzz 2
|
||||||
|
|
||||||
%define gitdate 20140625
|
%define gitdate 20140711
|
||||||
#% define snapshot
|
#% define snapshot
|
||||||
|
|
||||||
Summary: Mesa graphics libraries
|
Summary: Mesa graphics libraries
|
||||||
Name: mesa
|
Name: mesa
|
||||||
Version: 10.2.2
|
Version: 10.2.3
|
||||||
Release: 4.%{gitdate}%{?dist}
|
Release: 1.%{gitdate}%{?dist}
|
||||||
License: MIT
|
License: MIT
|
||||||
Group: System Environment/Libraries
|
Group: System Environment/Libraries
|
||||||
URL: http://www.mesa3d.org
|
URL: http://www.mesa3d.org
|
||||||
@ -75,8 +75,6 @@ Patch12: mesa-8.0.1-fix-16bpp.patch
|
|||||||
Patch15: mesa-9.2-hardware-float.patch
|
Patch15: mesa-9.2-hardware-float.patch
|
||||||
Patch20: mesa-10.2-evergreen-big-endian.patch
|
Patch20: mesa-10.2-evergreen-big-endian.patch
|
||||||
|
|
||||||
# dri3 GLX_INTEL_swap_event fix
|
|
||||||
Patch30: 0001-glxext-Send-the-Drawable-s-ID-in-the-GLX_BufferSwapC.patch
|
|
||||||
# http://lists.freedesktop.org/archives/mesa-dev/2014-July/062741.html
|
# http://lists.freedesktop.org/archives/mesa-dev/2014-July/062741.html
|
||||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1115323
|
# https://bugzilla.redhat.com/show_bug.cgi?id=1115323
|
||||||
Patch31: 0001-i915-Fix-up-intelInitScreen2-for-DRI3.patch
|
Patch31: 0001-i915-Fix-up-intelInitScreen2-for-DRI3.patch
|
||||||
@ -347,7 +345,6 @@ grep -q ^/ src/gallium/auxiliary/vl/vl_decoder.c && exit 1
|
|||||||
%patch15 -p1 -b .hwfloat
|
%patch15 -p1 -b .hwfloat
|
||||||
%patch20 -p1 -b .egbe
|
%patch20 -p1 -b .egbe
|
||||||
|
|
||||||
%patch30 -p1 -b .dri3fix
|
|
||||||
%patch31 -p1 -b .dri3fix
|
%patch31 -p1 -b .dri3fix
|
||||||
|
|
||||||
%if 0%{?with_opencl}
|
%if 0%{?with_opencl}
|
||||||
@ -677,6 +674,9 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri Jul 11 2014 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 10.2.3-1.20140711
|
||||||
|
- 10.2.3 upstream release
|
||||||
|
|
||||||
* Mon Jul 7 2014 Peter Robinson <pbrobinson@fedoraproject.org> 10.2.2-4.20140625
|
* Mon Jul 7 2014 Peter Robinson <pbrobinson@fedoraproject.org> 10.2.2-4.20140625
|
||||||
- Build aarch64 options the same as ARMv7
|
- Build aarch64 options the same as ARMv7
|
||||||
- Fix PPC conditionals
|
- Fix PPC conditionals
|
||||||
|
Loading…
Reference in New Issue
Block a user