min = int(time()) + self.MaxWaitTime
# calculate next activation point
- if len(self.timer_list):
+ if self.timer_list:
w = self.timer_list[0].getNextActivation()
if w < min:
min = w
self.addTimerEntry(timer)
def doActivate(self, w):
- self.timer_list.remove(w)
-
# when activating a timer which has already passed,
# simply abort the timer. don't run trough all the stages.
if w.shouldSkip():
if w.activate():
w.state += 1
+ self.timer_list.remove(w)
+
# did this timer reached the last state?
if w.state < TimerEntry.StateEnded:
# no, sort it into active list
t = int(time()) + 1
# we keep on processing the first entry until it goes into the future.
- while len(self.timer_list) and self.timer_list[0].getNextActivation() < t:
+ while self.timer_list and self.timer_list[0].getNextActivation() < t:
self.doActivate(self.timer_list[0])