From 1f90238b18ff1201ad488dc79ee276a3816d36ba Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Thu, 9 Aug 2018 08:52:22 +0530 Subject: [PATCH] If malloc fails remove timer from queue --- glfw/dbus_glfw.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/glfw/dbus_glfw.c b/glfw/dbus_glfw.c index 66e40d4eb..dfa77a932 100644 --- a/glfw/dbus_glfw.c +++ b/glfw/dbus_glfw.c @@ -111,7 +111,10 @@ add_dbus_timeout(DBusTimeout *timeout, void *data) { id_type timer_id = addTimer(dbus_data->eld, data, interval, enabled, on_dbus_timer_ready, timeout); if (!timer_id) return FALSE; id_type *idp = malloc(sizeof(id_type)); - if (!idp) return FALSE; + if (!idp) { + removeTimer(dbus_data->eld, timer_id); + return FALSE; + } *idp = timer_id; dbus_timeout_set_data(timeout, idp, free); return TRUE;