From 64a4223203928443ee5a49dbb7579e1db53a4056 Mon Sep 17 00:00:00 2001 From: Thomas Harning Jr Date: Thu, 6 Sep 2007 00:05:55 -0400 Subject: Added timertest. Prevented GC-ed events from causing an abort. --- src/event_callback.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/event_callback.c b/src/event_callback.c index bbcd51c..76a7789 100644 --- a/src/event_callback.c +++ b/src/event_callback.c @@ -23,7 +23,13 @@ void luaevent_callback(int fd, short event, void* p) { lua_State* L; int ret; double newTimeout = -1; - assert(cb && cb->base && cb->base->loop_L); + assert(cb); + if(!cb->base) { + /* Callback has been collected... die */ + /* TODO: What should really be done here... */ + return; + } + assert(cb->base->loop_L); L = cb->base->loop_L; lua_rawgeti(L, LUA_REGISTRYINDEX, cb->callbackRef); lua_pushinteger(L, event); -- cgit v1.2.3