From 554b55c9ec0b67981cab8303af0b2cf7017f354e Mon Sep 17 00:00:00 2001 From: Griatch Date: Thu, 14 May 2015 21:36:43 +0200 Subject: [PATCH] Fixed a kwarg call where Tickerhandler assumed too much about the hook method. --- evennia/scripts/tickerhandler.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/evennia/scripts/tickerhandler.py b/evennia/scripts/tickerhandler.py index daceadfd06..79b069cc42 100644 --- a/evennia/scripts/tickerhandler.py +++ b/evennia/scripts/tickerhandler.py @@ -92,7 +92,7 @@ class Ticker(object): appropriately. """ for store_key, (obj, args, kwargs) in self.subscriptions.items(): - hook_key = yield kwargs.get("_hook_key", "at_tick") + hook_key = yield kwargs.pop("_hook_key", "at_tick") if not obj or not obj.pk: # object was deleted between calls self.remove(store_key) @@ -104,6 +104,9 @@ class Ticker(object): self.remove(store_key) except Exception: log_trace() + finally: + # make sure to re-store + kwargs["_hook_key"] = hook_key def __init__(self, interval): """