SHA256
1
0
forked from pool/Mesa

Accepting request 49266 from X11:XOrg

checked in (request 49266)

OBS-URL: https://build.opensuse.org/request/show/49266
OBS-URL: https://build.opensuse.org/package/show/X11:XOrg/Mesa?expand=0&rev=127
This commit is contained in:
OBS User autobuild 2010-09-27 22:04:15 +00:00 committed by Git OBS Bridge
parent 76dabd49b8
commit d1ce452e49
6 changed files with 66 additions and 23 deletions

View File

@ -1,14 +1,3 @@
-------------------------------------------------------------------
Mon Sep 27 18:28:46 UTC 2010 - sndirsch@novell.com
- updated to MesaLib 7.9-RC1
-------------------------------------------------------------------
Wed Sep 15 12:29:11 UTC 2010 - sndirsch@novell.com
- Mesa git master #83f5f50 (2010-09-14)
- obsoletes commit-4ebf07a.diff
-------------------------------------------------------------------
Wed Sep 15 03:54:37 UTC 2010 - sndirsch@novell.com

View File

@ -1,5 +1,5 @@
#
# spec file for package Mesa (Version 7.9)
# spec file for package Mesa (Version 7.8.2)
#
# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@ -19,10 +19,11 @@
%define enable_nouveau 1
%define _version 7.9
%define _version 7.8.2
Version: 7.8.2
Release: 7
Version: 7.9
Release: 6
Name: Mesa
BuildRequires: gcc-c++ libdrm-devel libexpat-devel pkgconfig python-base xorg-x11-devel
BuildRequires: bison flex libtalloc-devel libxml2-python
@ -42,8 +43,8 @@ Provides: XFree86-Mesa-64bit = %{version} Mesa-64bit < %{version}
%endif
#
Summary: System for rendering interactive 3-D graphics
Source: MesaLib-%{_version}-rc1.tar.bz2
Source1: MesaDemos-7.8.2.tar.bz2
Source: MesaLib-%{_version}-afd328a.tar.bz2
Source1: MesaDemos-%{_version}.tar.bz2
Source2: baselibs.conf
Source3: README.updates
Source4: manual-pages.tar.bz2
@ -54,6 +55,7 @@ Patch1: dri_driver_dir.diff
Patch8: egl-buildfix.diff
Patch9: Mesa_indirect_old_xserver_compatibility.diff
# already upstream
Patch10: commit-4ebf07a.diff
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
@ -133,7 +135,7 @@ Authors:
Francisco Jerez
%prep
%setup -n %{name}-%{_version}-rc1 -a1 -b4 -q
%setup -n %{name}-%{_version} -b1 -b4 -q
# no need to build (GLUT-)Demos
rm -rf src/glut progs/{demos,redbook,samples,xdemos,glsl}
# we use freeglut
@ -145,6 +147,7 @@ sed -i 's/REPLACE/%_lib/g' src/glx/Makefile
sed -i 's/REPLACE/%_lib/g' src/egl/drivers/dri2/Makefile
%patch8
%patch9 -p0
%patch10 -p1
%build

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d577cf50cd5341c4bcdaf1528fe7090aca79e6b8486b7c9ffb3c166f3aa87716
size 16293142
oid sha256:ea7b9ebfb7a80de2b275c0c9124c8a505382ec48411a2794ab82542f9885ac3c
size 16264816

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:32f9a9f0f51318bc4fe9f99a52a6ab5d5a59ecb58c5c313fe672bb056d13be86
size 6325581

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:436d9a6597ca5bea292c6779ee60fc885ee484d48a06814b360041cadd00e745
size 6250898

51
commit-4ebf07a.diff Normal file
View File

@ -0,0 +1,51 @@
commit 4ebf07a426771b62123e5fcb5a8be0de24037af1
Author: Kristian Høgsberg <krh@bitplanet.net>
Date: Mon Sep 13 08:39:42 2010 -0400
glx: Don't destroy DRI2 drawables for legacy glx drawables
For GLX 1.3 drawables, we can destroy the DRI2 drawable when the GLX
drawable is destroyed. However, for legacy drawables, there os no
good way of knowing when the application is done with it, so we just
let the DRI2 drawable linger on the server. The server will destroy
the DRI2 drawable when it destroys the X drawable or the client exits
anyway.
https://bugs.freedesktop.org/show_bug.cgi?id=30109
diff --git a/src/glx/dri2_glx.c b/src/glx/dri2_glx.c
index e38a40c..8247588 100644
--- a/src/glx/dri2_glx.c
+++ b/src/glx/dri2_glx.c
@@ -210,7 +210,17 @@ dri2DestroyDrawable(__GLXDRIdrawable *base)
__glxHashDelete(pdp->dri2Hash, pdraw->base.xDrawable);
(*psc->core->destroyDrawable) (pdraw->driDrawable);
- DRI2DestroyDrawable(psc->base.dpy, pdraw->base.xDrawable);
+
+ /* If it's a GLX 1.3 drawables, we can destroy the DRI2 drawable
+ * now, as the application explicitly asked to destroy the GLX
+ * drawable. Otherwise, for legacy drawables, we let the DRI2
+ * drawable linger on the server, since there's no good way of
+ * knowing when the application is done with it. The server will
+ * destroy the DRI2 drawable when it destroys the X drawable or the
+ * client exits anyway. */
+ if (pdraw->base.xDrawable != pdraw->base.drawable)
+ DRI2DestroyDrawable(psc->base.dpy, pdraw->base.xDrawable);
+
Xfree(pdraw);
}
diff --git a/src/mesa/vbo/vbo_exec_array.c b/src/mesa/vbo/vbo_exec_array.c
index 1759e57..60b999f 100644
--- a/src/mesa/vbo/vbo_exec_array.c
+++ b/src/mesa/vbo/vbo_exec_array.c
@@ -490,6 +490,8 @@ vbo_exec_DrawArrays(GLenum mode, GLint start, GLsizei count)
if (!_mesa_validate_DrawArrays( ctx, mode, start, count ))
return;
+ vbo_exec_FlushVertices_internal( ctx, GL_FALSE );
+
FLUSH_CURRENT( ctx, 0 );
if (!_mesa_valid_to_render(ctx, "glDrawArrays")) {