diff --git a/.github/actions/install/action.yml b/.github/actions/install/action.yml index 344b3cb2..51f7b2e2 100644 --- a/.github/actions/install/action.yml +++ b/.github/actions/install/action.yml @@ -13,7 +13,7 @@ inputs: zig-v8: description: 'zig v8 version to install' required: false - default: 'v0.1.37' + default: 'v0.2.2' v8: description: 'v8 version to install' required: false diff --git a/Dockerfile b/Dockerfile index 5d71dad7..516c3856 100644 --- a/Dockerfile +++ b/Dockerfile @@ -3,7 +3,7 @@ FROM debian:stable-slim ARG MINISIG=0.12 ARG ZIG_MINISIG=RWSGOq2NVecA2UPNdBUZykf1CCb147pkmdtYxgb3Ti+JO/wCYvhbAb/U ARG V8=14.0.365.4 -ARG ZIG_V8=v0.1.37 +ARG ZIG_V8=v0.2.2 ARG TARGETPLATFORM RUN apt-get update -yq && \ diff --git a/build.zig.zon b/build.zig.zon index 9f6a65c5..2053538f 100644 --- a/build.zig.zon +++ b/build.zig.zon @@ -6,8 +6,8 @@ .minimum_zig_version = "0.15.2", .dependencies = .{ .v8 = .{ - .url = "https://github.com/lightpanda-io/zig-v8-fork/archive/0d64a3d5b36ac94067df3e13fddbf715caa6f391.tar.gz", - .hash = "v8-0.0.0-xddH65sfBAC8o3q41YxhOms5uY2fvMzBrsgN8IeCXZgE", + .url = "https://github.com/lightpanda-io/zig-v8-fork/archive/d6b5f89cfc7feece29359e8c848bb916e8ecfab6.tar.gz", + .hash = "v8-0.0.0-xddH6_0gBABrJc5cL6-P2wGvvweTTCgWdpmClr9r-C-s", }, //.v8 = .{ .path = "../zig-v8-fork" }, .@"boringssl-zig" = .{ diff --git a/src/browser/js/Caller.zig b/src/browser/js/Caller.zig index a6635879..51fa23ea 100644 --- a/src/browser/js/Caller.zig +++ b/src/browser/js/Caller.zig @@ -89,6 +89,10 @@ pub const CallOpts = struct { }; pub fn constructor(self: *Caller, comptime T: type, func: anytype, info: v8.FunctionCallbackInfo, comptime opts: CallOpts) void { + if (!info.isConstructCall()) { + self.handleError(T, @TypeOf(func), error.InvalidArgument, info, opts); + return; + } self._constructor(func, info) catch |err| { self.handleError(T, @TypeOf(func), err, info, opts); };