blob: c419462299c0887ccc0ff10d0d9fae67033f39e9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
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
|