libx11: Changes to 'debian-unstable'
debian/changelog | 7 +++++++
src/xcb_io.c | 13 ++++++++++---
2 files changed, 17 insertions(+), 3 deletions(-)
New commits:
commit ca708e7101a9ae045b69f608968839fbee4a09fe
Author: Julien Cristau <jcristau@debian.org>
Date: Thu Sep 25 17:46:01 2008 +0200
Prepare changelog for upload
diff --git a/debian/changelog b/debian/changelog
index b97dcf0..15c86b4 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+libx11 (2:1.1.5-2) unstable; urgency=medium
+
+ * Cherry-picked from upstream git: Fix an XCB leak when the client has a
+ non-fatal error handler.
+
+ -- Julien Cristau <jcristau@debian.org> Thu, 25 Sep 2008 17:45:25 +0200
+
libx11 (2:1.1.5-1) unstable; urgency=low
[ Brice Goglin ]
commit 43c5e5348c90162740aba7e5ad870e550d39d551
Author: Adam Jackson <ajax@redhat.com>
Date: Wed Sep 17 12:54:34 2008 -0400
Fix the previous patch for the BadFont case.
(cherry picked from commit 340422a5c7a413faef18666cada27cee14615250)
diff --git a/src/xcb_io.c b/src/xcb_io.c
index 3881d97..e23dbb2 100644
--- a/src/xcb_io.c
+++ b/src/xcb_io.c
@@ -401,9 +401,10 @@ Status _XReply(Display *dpy, xReply *rep, int extra, Bool discard)
}
break;
case BadFont:
- if(err->majorCode == X_QueryFont)
+ if(err->majorCode == X_QueryFont) {
free(error);
return 0;
+ }
break;
case BadAlloc:
case BadAccess:
commit ae15b9bf1a462645977c8533a6acb4385d4fba7f
Author: Matthias Clasen <mclasen@redhat.com>
Date: Wed Sep 17 10:43:52 2008 -0400
Bug #17616: Fix an XCB leak when the client has a non-fatal error handler.
(cherry picked from commit 2335eafe4b53c27f6f9ee1bab3e1f5842f896428)
diff --git a/src/xcb_io.c b/src/xcb_io.c
index 5f07184..3881d97 100644
--- a/src/xcb_io.c
+++ b/src/xcb_io.c
@@ -396,15 +396,18 @@ Status _XReply(Display *dpy, xReply *rep, int extra, Bool discard)
{
case X_LookupColor:
case X_AllocNamedColor:
+ free(error);
return 0;
}
break;
case BadFont:
if(err->majorCode == X_QueryFont)
+ free(error);
return 0;
break;
case BadAlloc:
case BadAccess:
+ free(error);
return 0;
}
@@ -413,10 +416,13 @@ Status _XReply(Display *dpy, xReply *rep, int extra, Bool discard)
* want to suppress the error.
*/
for(ext = dpy->ext_procs; ext; ext = ext->next)
- if(ext->error && ext->error(dpy, err, &ext->codes, &ret_code))
+ if(ext->error && ext->error(dpy, err, &ext->codes, &ret_code)) {
+ free(error);
return ret_code;
+ }
- _XError(dpy, (xError *) error);
+ _XError(dpy, err);
+ free(error);
return 0;
}
Reply to: