diff options
author | Vincent Sanders <vince@netsurf-browser.org> | 2012-07-31 22:33:08 +0100 |
---|---|---|
committer | Vincent Sanders <vince@netsurf-browser.org> | 2012-07-31 22:33:08 +0100 |
commit | 5c25b8255a9c3e62bf7ac1264cc5443ea3f14abc (patch) | |
tree | 14117974d2505afca36d0c462253aed1c6510d93 /render/html_script.c | |
parent | 84152cd72b5971250ba37b7654856a15c03ba42b (diff) | |
download | netsurf-5c25b8255a9c3e62bf7ac1264cc5443ea3f14abc.tar.gz netsurf-5c25b8255a9c3e62bf7ac1264cc5443ea3f14abc.tar.bz2 |
add post parse script execution
Diffstat (limited to 'render/html_script.c')
-rw-r--r-- | render/html_script.c | 19 |
1 files changed, 5 insertions, 14 deletions
diff --git a/render/html_script.c b/render/html_script.c index f4d80ab54..b27abf7f4 100644 --- a/render/html_script.c +++ b/render/html_script.c @@ -49,13 +49,13 @@ static script_handler_t *select_script_handler(content_type ctype) } -/* attempt to progress script execution +/* attempt defer and async script execution * * execute scripts using algorithm found in: * http://www.whatwg.org/specs/web-apps/current-work/multipage/scripting-1.html#the-script-element * */ -static bool html_scripts_exec(html_content *c) +bool html_scripts_exec(html_content *c) { unsigned int i; struct html_script *s; @@ -69,10 +69,8 @@ static bool html_scripts_exec(html_content *c) continue; } - assert((s->type == HTML_SCRIPT_SYNC) || - (s->type == HTML_SCRIPT_INLINE)); - - if (s->type == HTML_SCRIPT_SYNC) { + if ((s->type == HTML_SCRIPT_ASYNC) || + (s->type == HTML_SCRIPT_DEFER)) { /* ensure script content is present */ if (s->data.handle == NULL) continue; @@ -99,14 +97,7 @@ static bool html_scripts_exec(html_content *c) s->already_started = true; - } else { - /* script not yet available */ - - /* check if deferable or asynchronous */ - if (!s->defer && !s->async) { - break; - } - } + } } } |