This patch is at
http://cgit.freedesktop.org/~tade/mesa/diff/?h=xcb-integration&id=0e78c256e9fd9a2bab5acb4b639c5240357129f7
. I am sure this #include is not elegant, but it works.
Kristof
>From 0e78c256e9fd9a2bab5acb4b639c5240357129f7 Mon Sep 17 00:00:00 2001
From: =?utf-8?q?Ralovich,=20Krist=C3=B3f?= <[EMAIL PROTECTED]>
Date: Tue, 19 Aug 2008 13:09:43 +0200
Subject: [PATCH] Plug a leak.
---
src/glx/x11/dri_glx.c | 12 +++++++++---
1 files changed, 9 insertions(+), 3 deletions(-)
diff --git a/src/glx/x11/dri_glx.c b/src/glx/x11/dri_glx.c
index 82653f1..7f551b2 100644
--- a/src/glx/x11/dri_glx.c
+++ b/src/glx/x11/dri_glx.c
@@ -47,6 +47,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#include <sys/mman.h>
#include "xf86drm.h"
#include "dri_common.h"
+#include "../drivers/dri/common/dri_util.h"
typedef struct __GLXDRIdisplayPrivateRec __GLXDRIdisplayPrivate;
typedef struct __GLXDRIcontextPrivateRec __GLXDRIcontextPrivate;
@@ -572,9 +573,14 @@ static __GLXDRIdrawable
*driCreateDrawable(__GLXscreenConfigs *psc,
static void driDestroyScreen(__GLXscreenConfigs *psc)
{
/* Free the direct rendering per screen data */
- if (psc->__driScreen)
- (*psc->core->destroyScreen)(psc->__driScreen);
- psc->__driScreen = NULL;
+ if (psc->__driScreen) {
+ if (psc->__driScreen->pDevPriv) {
+ Xfree(psc->__driScreen->pDevPriv);
+ psc->__driScreen->pDevPriv = NULL;
+ }
+ (*psc->core->destroyScreen)(psc->__driScreen);
+ psc->__driScreen = NULL;
+ }
if (psc->driver)
dlclose(psc->driver);
}
--
1.5.6.3
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Mesa3d-dev mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mesa3d-dev