diff --git a/src/browser/browser.zig b/src/browser/browser.zig index f901b2c3..d180ef27 100644 --- a/src/browser/browser.zig +++ b/src/browser/browser.zig @@ -229,7 +229,7 @@ pub const Page = struct { // TODO set the referrer to the document. - self.session.window.replaceDocument(doc); + self.session.window.replaceDocument(html_doc); // https://html.spec.whatwg.org/#read-html diff --git a/src/html/window.zig b/src/html/window.zig index e1080267..e7d1ca47 100644 --- a/src/html/window.zig +++ b/src/html/window.zig @@ -14,7 +14,7 @@ pub const Window = struct { // Extend libdom event target for pure zig struct. base: parser.EventTargetTBase = parser.EventTargetTBase{}, - document: ?*parser.Document = null, + document: ?*parser.DocumentHTML = null, target: []const u8, pub fn create(target: ?[]const u8) Window { @@ -23,7 +23,7 @@ pub const Window = struct { }; } - pub fn replaceDocument(self: *Window, doc: *parser.Document) void { + pub fn replaceDocument(self: *Window, doc: *parser.DocumentHTML) void { self.document = doc; } @@ -39,7 +39,7 @@ pub const Window = struct { return self; } - pub fn get_document(self: *Window) ?*parser.Document { + pub fn get_document(self: *Window) ?*parser.DocumentHTML { return self.document; } diff --git a/src/main.zig b/src/main.zig index 7bb1a24d..1dc34dc6 100644 --- a/src/main.zig +++ b/src/main.zig @@ -23,7 +23,7 @@ fn execJS( // alias global as self and window var window = Window.create(null); - window.replaceDocument(parser.documentHTMLToDocument(doc)); + window.replaceDocument(doc); try js_env.bindGlobal(window); while (true) { diff --git a/src/main_shell.zig b/src/main_shell.zig index c1971f9f..965e7cf6 100644 --- a/src/main_shell.zig +++ b/src/main_shell.zig @@ -22,7 +22,7 @@ fn execJS( // alias global as self and window var window = Window.create(null); - window.replaceDocument(parser.documentHTMLToDocument(doc)); + window.replaceDocument(doc); try js_env.bindGlobal(window); // launch shellExec diff --git a/src/run_tests.zig b/src/run_tests.zig index e2ca7f65..2f5c8d6b 100644 --- a/src/run_tests.zig +++ b/src/run_tests.zig @@ -51,7 +51,7 @@ fn testExecFn( // alias global as self and window var window = Window.create(null); - window.replaceDocument(parser.documentHTMLToDocument(doc)); + window.replaceDocument(doc); try js_env.bindGlobal(window); // run test diff --git a/src/wpt/run.zig b/src/wpt/run.zig index 09fdc1b9..686363c0 100644 --- a/src/wpt/run.zig +++ b/src/wpt/run.zig @@ -23,7 +23,6 @@ pub fn run(arena: *std.heap.ArenaAllocator, comptime dir: []const u8, f: []const defer file.close(); const html_doc = try parser.documentHTMLParse(file.reader(), "UTF-8"); - const doc = parser.documentHTMLToDocument(html_doc); const dirname = fspath.dirname(f[dir.len..]) orelse unreachable; @@ -52,7 +51,7 @@ pub fn run(arena: *std.heap.ArenaAllocator, comptime dir: []const u8, f: []const // setup global env vars. var window = Window.create(null); - window.replaceDocument(doc); + window.replaceDocument(html_doc); try js_env.bindGlobal(window); // thanks to the arena, we don't need to deinit res. @@ -70,6 +69,7 @@ pub fn run(arena: *std.heap.ArenaAllocator, comptime dir: []const u8, f: []const } // loop hover the scripts. + const doc = parser.documentHTMLToDocument(html_doc); const scripts = try parser.documentGetElementsByTagName(doc, "script"); const slen = try parser.nodeListLength(scripts); for (0..slen) |i| {