From da5ec748b61b604ff93542a44832202ff32fe1b7 Mon Sep 17 00:00:00 2001 From: Petr Baudis Date: Sun, 5 Nov 2006 00:53:04 +0100 Subject: [PATCH] setTimeout: kill previous timer when planting a new one Otherwise if the page installs multiple timers the old one would live on unreferenced and possibly (likely) trigger after the document's death and everything would go to hell. --- src/ecmascript/ecmascript.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/ecmascript/ecmascript.c b/src/ecmascript/ecmascript.c index 9c7e9695..49098d90 100644 --- a/src/ecmascript/ecmascript.c +++ b/src/ecmascript/ecmascript.c @@ -323,6 +323,7 @@ ecmascript_set_timeout(struct ecmascript_interpreter *interpreter, unsigned char init_string(&interpreter->code); add_to_string(&interpreter->code, code); mem_free(code); + kill_timer(&interpreter->vs->doc_view->document->timeout); install_timer(&interpreter->vs->doc_view->document->timeout, timeout, ecmascript_timeout_handler, interpreter); }