diff options
author | 2009-06-13 14:29:36 -0400 | |
---|---|---|
committer | 2009-06-13 14:29:36 -0400 | |
commit | ba3e01e524907d85f5cba6af62083fcdee606f33 (patch) | |
tree | 1f400f83f20ef1f54d68e1e7b674a08f29abb4d4 /lib/js/urweb.js | |
parent | b7de8e9ac590f9d06df72d22489375b33a6efef9 (diff) |
<dyn> inside <table>; fix Specialize bug with datatype decls generating other mutually-recursive datatype decls
Diffstat (limited to 'lib/js/urweb.js')
-rw-r--r-- | lib/js/urweb.js | 23 |
1 files changed, 14 insertions, 9 deletions
diff --git a/lib/js/urweb.js b/lib/js/urweb.js index efd94bb9..60de8744 100644 --- a/lib/js/urweb.js +++ b/lib/js/urweb.js @@ -278,15 +278,20 @@ function dyn(s) { for (var ls = x.closures; ls; ls = ls.next) freeClosure(ls.data); - var spans = x.getElementsByTagName("span"); - for (var i = 0; i < spans.length; ++i) { - var span = spans[i]; - span.dead = true; - for (var ls = span.sources; ls; ls = ls.next) - ls.data.dyns = remove(span, ls.data.dyns); - for (var ls = span.closures; ls; ls = ls.next) - freeClosure(ls.data); - } + var doKind = function(kind) { + var arr = x.getElementsByTagName(kind); + for (var i = 0; i < arr.length; ++i) { + var span = arr[i]; + span.dead = true; + for (var ls = span.sources; ls; ls = ls.next) + ls.data.dyns = remove(span, ls.data.dyns); + for (var ls = span.closures; ls; ls = ls.next) + freeClosure(ls.data); + } + }; + + doKind("span"); + doKind("tbody"); var cls = {v : null}; x.innerHTML = flatten(cls, v); |