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-20140608.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 gitdate 20140625
|
||||
%define gitdate 20140711
|
||||
#% define snapshot
|
||||
|
||||
Summary: Mesa graphics libraries
|
||||
Name: mesa
|
||||
Version: 10.2.2
|
||||
Release: 4.%{gitdate}%{?dist}
|
||||
Version: 10.2.3
|
||||
Release: 1.%{gitdate}%{?dist}
|
||||
License: MIT
|
||||
Group: System Environment/Libraries
|
||||
URL: http://www.mesa3d.org
|
||||
@ -75,8 +75,6 @@ Patch12: mesa-8.0.1-fix-16bpp.patch
|
||||
Patch15: mesa-9.2-hardware-float.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
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1115323
|
||||
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
|
||||
%patch20 -p1 -b .egbe
|
||||
|
||||
%patch30 -p1 -b .dri3fix
|
||||
%patch31 -p1 -b .dri3fix
|
||||
|
||||
%if 0%{?with_opencl}
|
||||
@ -677,6 +674,9 @@ rm -rf $RPM_BUILD_ROOT
|
||||
%endif
|
||||
|
||||
%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
|
||||
- Build aarch64 options the same as ARMv7
|
||||
- Fix PPC conditionals
|
||||
|
Loading…
Reference in New Issue
Block a user