From 9e3b01927e6fbcf4f6f92a01d991675ebd88720b Mon Sep 17 00:00:00 2001 From: derselbst Date: Sat, 21 Oct 2017 12:48:52 +0200 Subject: [PATCH] fix use after free --- src/utils/fluid_sys.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/utils/fluid_sys.c b/src/utils/fluid_sys.c index a1f720b6..e6f7c3f8 100644 --- a/src/utils/fluid_sys.c +++ b/src/utils/fluid_sys.c @@ -753,7 +753,15 @@ new_fluid_timer (int msec, fluid_timer_callback_t callback, void* data, return NULL; } } - else fluid_timer_run (timer); /* Run directly, instead of as a separate thread */ + else + { + fluid_timer_run (timer); /* Run directly, instead of as a separate thread */ + if(timer->auto_destroy) + { + /* do NOT return freed memory */ + return NULL; + } + } return timer; }