From 228f44a57d7eba4b8c47ba2c69187bdb5462e367 Mon Sep 17 00:00:00 2001 From: Pierre Tachoire Date: Wed, 20 Dec 2023 11:31:32 +0100 Subject: [PATCH] browser: add initVM/deinitVM in main --- src/browser/browser.zig | 8 ++++++++ src/main_get.zig | 7 +++++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/src/browser/browser.zig b/src/browser/browser.zig index 452d3ed2..d3fd8d53 100644 --- a/src/browser/browser.zig +++ b/src/browser/browser.zig @@ -19,6 +19,14 @@ pub const Browser = struct { allocator: std.mem.Allocator, session: Session = undefined, + var vm: jsruntime.VM = undefined; + pub fn initVM() void { + vm = jsruntime.VM.init(); + } + pub fn deinitVM() void { + vm.deinit(); + } + pub fn init(allocator: std.mem.Allocator) Browser { var b = Browser{ .allocator = allocator }; b.session = try b.createSession(null); diff --git a/src/main_get.zig b/src/main_get.zig index d4700773..9854af1a 100644 --- a/src/main_get.zig +++ b/src/main_get.zig @@ -1,5 +1,5 @@ const std = @import("std"); -const b = @import("browser/browser.zig"); +const Browser = @import("browser/browser.zig").Browser; pub const std_options = struct { pub const log_level = .debug; @@ -47,7 +47,10 @@ pub fn main() !void { std.os.exit(1); } - var browser = b.Browser.init(allocator); + Browser.initVM(); + defer Browser.deinitVM(); + + var browser = Browser.init(allocator); defer browser.deinit(); var page = try browser.currentSession().createPage();