From f7d7c296398ef6cee6025ff4d8484a74bca2d554 Mon Sep 17 00:00:00 2001 From: Bo Yang Date: Thu, 13 Aug 2009 11:51:54 +0000 Subject: 1. Fix a string intern bug. 2. Reset the fields when finalise a dom_event. svn path=/trunk/dom/; revision=9247 --- src/events/event.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'src/events/event.c') diff --git a/src/events/event.c b/src/events/event.c index f9caa0b..9330edf 100644 --- a/src/events/event.c +++ b/src/events/event.c @@ -59,8 +59,6 @@ dom_exception _dom_event_initialise(struct dom_document *doc, evt->namespace = NULL; - evt->timestamp = time(NULL); - evt->refcnt = 1; evt->in_dispatch = false; @@ -78,6 +76,17 @@ void _dom_event_finalise(struct dom_document *doc, struct dom_event *evt) lwc_context_string_unref(ctx, evt->type); if (evt->namespace != NULL) lwc_context_string_unref(ctx, evt->namespace); + + evt->stop = false; + evt->stop_now = false; + evt->prevent_default = false; + evt->custom = false; + + evt->type = NULL; + + evt->namespace = NULL; + + evt->in_dispatch = false; } /* The virtual destroy function */ @@ -253,6 +262,8 @@ dom_exception _dom_event_init(dom_event *evt, struct dom_string *type, evt->bubble = bubble; evt->cancelable = cancelable; + evt->timestamp = time(NULL); + return DOM_NO_ERR; } -- cgit v1.2.3