If malloc fails remove timer from queue

This commit is contained in:
Kovid Goyal 2018-08-09 08:52:22 +05:30
parent 89b636376e
commit 1f90238b18
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C

5
glfw/dbus_glfw.c vendored
View File

@ -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); id_type timer_id = addTimer(dbus_data->eld, data, interval, enabled, on_dbus_timer_ready, timeout);
if (!timer_id) return FALSE; if (!timer_id) return FALSE;
id_type *idp = malloc(sizeof(id_type)); id_type *idp = malloc(sizeof(id_type));
if (!idp) return FALSE; if (!idp) {
removeTimer(dbus_data->eld, timer_id);
return FALSE;
}
*idp = timer_id; *idp = timer_id;
dbus_timeout_set_data(timeout, idp, free); dbus_timeout_set_data(timeout, idp, free);
return TRUE; return TRUE;