From 765cb8535012ff3465cf84d94379dbfe87edaa77 Mon Sep 17 00:00:00 2001 From: "Enrico Weigelt, metux IT consult" Date: Wed, 7 May 2025 13:01:20 +0200 Subject: [PATCH] dix: make DeviceEnterLeaveEvent() anaylzer-friendly The analyzer giving a false alarm on potential NULL-pointer deref here. Even though that case can't happen, it's also not immediately clear to the human reader. To make both the analyzer as well human reader happier, reformulating this function to by using fast-return pattern. Signed-off-by: Enrico Weigelt, metux IT consult --- dix/events.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/dix/events.c b/dix/events.c index a257dd284..585f84c1f 100644 --- a/dix/events.c +++ b/dix/events.c @@ -4745,7 +4745,6 @@ DeviceEnterLeaveEvent(DeviceIntPtr mouse, int mode, int detail, WindowPtr pWin, Window child) { GrabPtr grab = mouse->deviceGrab.grab; - xXIEnterEvent *event; WindowPtr focus; int filter; int btlen, len, i; @@ -4759,7 +4758,10 @@ DeviceEnterLeaveEvent(DeviceIntPtr mouse, btlen = bytes_to_int32(btlen); len = sizeof(xXIEnterEvent) + btlen * 4; - event = calloc(1, len); + xXIEnterEvent *event = calloc(1, len); + if (!event) + return; + event->type = GenericEvent; event->extension = IReqCode; event->evtype = type;