41 lines
1.2 KiB
Diff
41 lines
1.2 KiB
Diff
|
From 623b77d4f30b47258a40f89262e5aa5d25e95fa7 Mon Sep 17 00:00:00 2001
|
||
|
From: Benno Schulenberg <bensberg@telfort.nl>
|
||
|
Date: Mon, 14 Feb 2022 11:33:25 +0100
|
||
|
Subject: [PATCH] imDefLkup: verify that a pointer isn't NULL before using it
|
||
|
|
||
|
It is possible for _XimICOfXICID() to return NULL, so it is necessary
|
||
|
to check this isn't actually the case before dereferencing the pointer.
|
||
|
All other callers of _XimICOfXICID() do this check too.
|
||
|
|
||
|
(The check itself is ugly, but it follows the style of the code in the
|
||
|
rest of the module.)
|
||
|
|
||
|
Fixes issue #45.
|
||
|
|
||
|
Reported-by: Bhavi Dhingra
|
||
|
|
||
|
Original-patch-by: Bhavi Dhingra
|
||
|
|
||
|
Signed-off-by: Benno Schulenberg <bensberg@telfort.nl>
|
||
|
---
|
||
|
modules/im/ximcp/imDefLkup.c | 3 ++-
|
||
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/modules/im/ximcp/imDefLkup.c b/modules/im/ximcp/imDefLkup.c
|
||
|
index dea7f66d..dd1adf53 100644
|
||
|
--- a/modules/im/ximcp/imDefLkup.c
|
||
|
+++ b/modules/im/ximcp/imDefLkup.c
|
||
|
@@ -88,7 +88,8 @@ _XimSetEventMaskCallback(
|
||
|
|
||
|
if (imid == im->private.proto.imid) {
|
||
|
if (icid) {
|
||
|
- ic = _XimICOfXICID(im, icid);
|
||
|
+ if (!(ic = _XimICOfXICID(im, icid)))
|
||
|
+ return False;
|
||
|
_XimProcICSetEventMask(ic, (XPointer)&buf_s[2]);
|
||
|
} else {
|
||
|
_XimProcIMSetEventMask(im, (XPointer)&buf_s[2]);
|
||
|
--
|
||
|
2.46.0
|
||
|
|