src/event_callback.c

changeset 25
5778073d2903
parent 24
cda8e1a2dfa2
child 65
e65466cee871
--- a/src/event_callback.c	Wed Sep 05 23:35:31 2007 -0400
+++ b/src/event_callback.c	Thu Sep 06 00:05:55 2007 -0400
@@ -23,7 +23,13 @@
 	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);

mercurial