diff options
author | 2012-03-05 09:42:47 +0000 | |
---|---|---|
committer | 2012-03-05 09:42:47 +0000 | |
commit | 8c47a1c4a7803327ff657ffd0e5d5be9c0653594 (patch) | |
tree | 09ede77c151a731f75485d50084328401f86d4fb /x11-libs/libXaw3d/files | |
parent | marked x86 per bug 403875 (diff) | |
download | historical-8c47a1c4a7803327ff657ffd0e5d5be9c0653594.tar.gz historical-8c47a1c4a7803327ff657ffd0e5d5be9c0653594.tar.bz2 historical-8c47a1c4a7803327ff657ffd0e5d5be9c0653594.zip |
Fix use after free in DestroyAllIM (causing segmentation fault in app-text/gv exit) wrt #406487 by Matt Turner
Package-Manager: portage-2.2.0_alpha89/cvs/Linux x86_64
Diffstat (limited to 'x11-libs/libXaw3d/files')
-rw-r--r-- | x11-libs/libXaw3d/files/libXaw3d-1.6.1-use_after_free.patch | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/x11-libs/libXaw3d/files/libXaw3d-1.6.1-use_after_free.patch b/x11-libs/libXaw3d/files/libXaw3d-1.6.1-use_after_free.patch new file mode 100644 index 000000000000..c419462299c0 --- /dev/null +++ b/x11-libs/libXaw3d/files/libXaw3d-1.6.1-use_after_free.patch @@ -0,0 +1,39 @@ +From f435c05c64bc20557d901170b76f6bce8506ed48 Mon Sep 17 00:00:00 2001 +From: Matt Turner <mattst88@gmail.com> +Date: Thu, 1 Mar 2012 16:48:23 -0500 +Subject: [PATCH libXaw3d] Fix use-after-free in DestroyAllIM + +Fixes segmentation fault when closing gv. + +Found at http://gitorious.org/xaw3d/xaw3d/commit/23b3ca50395f180cba4a923eb8827dcc961629da + +Fixes: https://bugs.gentoo.org/show_bug.cgi?id=406487 +Signed-off-by: Matt Turner <mattst88@gmail.com> +--- +Original author of this patch is unknown. If you know, let me know and +I'll fix the attribution. + + src/XawIm.c | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/src/XawIm.c b/src/XawIm.c +index 82a94b1..00562b5 100644 +--- a/src/XawIm.c ++++ b/src/XawIm.c +@@ -320,12 +320,12 @@ DestroyAllIM(XawVendorShellExtPart *ve) + /* + * Close Input Method + */ +- CloseIM(ve); + if (!XFindContext(XDisplayOfIM(ve->im.xim), (Window)ve->im.xim, errContext, + (XPointer*)&contextErrData)) { + if (contextErrData) XtFree((char *)contextErrData); + } + XDeleteContext(XDisplayOfIM(ve->im.xim), (Window)ve->im.xim, errContext); ++ CloseIM(ve); + ve->im.xim = NULL; + + /* +-- +1.7.3.4 + |