diff --git a/src/hlua.c b/src/hlua.c
index 6fe3797..bc857d3 100644
--- a/src/hlua.c
+++ b/src/hlua.c
@@ -3780,7 +3780,9 @@ static struct task *hlua_process_task(struct task *task)
         * execution timeouts.
         */
        if (!HLUA_IS_RUNNING(hlua))
-               hlua->expire = tick_add(now_ms, hlua_timeout_task);
+    /* This works because hlua_timeout_task is be design set to be TICK_ETERNITY
+     * */
+               hlua->expire = tick_add_ifset(now_ms, hlua_timeout_task);

        /* Execute the Lua code. */
        status = hlua_ctx_resume(hlua, 1);