Invalidate aeTimer when returning AE_NOMORE (#8022)

This commit is contained in:
tzongw 2020-11-11 18:10:54 +08:00 committed by GitHub
parent ee7e3a221e
commit bfece4ea9d

View File

@ -5453,7 +5453,12 @@ int moduleTimerHandler(struct aeEventLoop *eventLoop, long long id, void *client
/* Reschedule the next timer or cancel it. */
if (next_period <= 0) next_period = 1;
return (raxSize(Timers) > 0) ? next_period : AE_NOMORE;
if (raxSize(Timers) > 0) {
return next_period;
} else {
aeTimer = -1;
return AE_NOMORE;
}
}
/* Create a new timer that will fire after `period` milliseconds, and will call