diff --git a/src/browser/tests/events.html b/src/browser/tests/events.html index 6be2ee8f3..3b451a90c 100644 --- a/src/browser/tests/events.html +++ b/src/browser/tests/events.html @@ -940,3 +940,16 @@ child.removeEventListener('click', listener); } + + diff --git a/src/browser/webapi/AbortSignal.zig b/src/browser/webapi/AbortSignal.zig index 9b679cbb2..a0c62f074 100644 --- a/src/browser/webapi/AbortSignal.zig +++ b/src/browser/webapi/AbortSignal.zig @@ -106,7 +106,7 @@ pub fn abort(self: *AbortSignal, reason_: ?Reason, exec: *const Execution) !void var to_dispatch: std.ArrayList(Dependend) = .{}; for (self._dependents.items) |dep| { if (try dep.markAborted(self._reason, exec)) { - try to_dispatch.append(exec.arena, dep); + try to_dispatch.append(exec.call_arena, dep); } } diff --git a/src/browser/webapi/Document.zig b/src/browser/webapi/Document.zig index 1295b7966..78901a2e4 100644 --- a/src/browser/webapi/Document.zig +++ b/src/browser/webapi/Document.zig @@ -216,7 +216,7 @@ pub fn getLastModified(self: *const Document, frame: *Frame) ![]const u8 { if (localtime_r(×tamp, &tm) == null) { return error.InvalidArgument; } - return std.fmt.allocPrint(frame.call_arena, "{d:0>2}/{d:0>2}/{d} {d:0>2}:{d:0>2}:{d:0>2}", .{ + return std.fmt.allocPrint(frame.local_arena, "{d:0>2}/{d:0>2}/{d} {d:0>2}:{d:0>2}:{d:0>2}", .{ @as(u32, @intCast(tm.tm_mon + 1)), @as(u32, @intCast(tm.tm_mday)), tm.tm_year + 1900, diff --git a/src/browser/webapi/cdata/Text.zig b/src/browser/webapi/cdata/Text.zig index 81cb7c6ad..2017e58e2 100644 --- a/src/browser/webapi/cdata/Text.zig +++ b/src/browser/webapi/cdata/Text.zig @@ -60,7 +60,7 @@ pub fn getWholeText(self: *Text, frame: *Frame) ![]const u8 { var current: ?*Node = first; while (current) |cur| : (current = cur.nextSibling()) { if (!isExclusiveTextNode(cur)) break; - try buf.appendSlice(frame.call_arena, cur._type.cdata._data.str()); + try buf.appendSlice(frame.local_arena, cur._type.cdata._data.str()); } return buf.items; } diff --git a/src/browser/webapi/collections/HTMLCollection.zig b/src/browser/webapi/collections/HTMLCollection.zig index 3765c2533..31280d81e 100644 --- a/src/browser/webapi/collections/HTMLCollection.zig +++ b/src/browser/webapi/collections/HTMLCollection.zig @@ -256,7 +256,7 @@ pub const JsApi = struct { }; var names: std.ArrayList([]const u8) = .{}; - const arena = exec.call_arena; + const arena = exec.local_arena; const len = self.length(frame); for (0..len) |i| { diff --git a/src/browser/webapi/element/DOMStringMap.zig b/src/browser/webapi/element/DOMStringMap.zig index 64d276425..dc05b445f 100644 --- a/src/browser/webapi/element/DOMStringMap.zig +++ b/src/browser/webapi/element/DOMStringMap.zig @@ -141,9 +141,9 @@ pub const JsApi = struct { // element's data-* attributes, in attribute order. fn getNames(self: *DOMStringMap, exec: *const js.Execution) !js.Array { var names: std.ArrayList([]const u8) = .empty; - for (try self._element._attributes.getNames(exec.call_arena)) |attr_name| { - const camel = (try kebabToCamel(exec.call_arena, attr_name)) orelse continue; - try names.append(exec.call_arena, camel); + for (try self._element._attributes.getNames(exec.local_arena)) |attr_name| { + const camel = (try kebabToCamel(exec.local_arena, attr_name)) orelse continue; + try names.append(exec.local_arena, camel); } var arr = exec.js.local.?.newArray(@intCast(names.items.len)); diff --git a/src/browser/webapi/element/Html.zig b/src/browser/webapi/element/Html.zig index be30988ea..7d2bdd6bc 100644 --- a/src/browser/webapi/element/Html.zig +++ b/src/browser/webapi/element/Html.zig @@ -380,7 +380,7 @@ pub fn getAccessKeyLabel(self: *HtmlElement, frame: *Frame) ![]const u8 { if (codepoints != 1) { return ""; } - return std.fmt.allocPrint(frame.call_arena, "Alt+{s}", .{value}); + return std.fmt.allocPrint(frame.local_arena, "Alt+{s}", .{value}); } pub fn getPopover(self: *HtmlElement) ?[]const u8 { diff --git a/src/browser/webapi/event/BeforeUnloadEvent.zig b/src/browser/webapi/event/BeforeUnloadEvent.zig index 00b2fdbff..4c1372cf6 100644 --- a/src/browser/webapi/event/BeforeUnloadEvent.zig +++ b/src/browser/webapi/event/BeforeUnloadEvent.zig @@ -71,8 +71,8 @@ pub fn getReturnValue(self: *const BeforeUnloadEvent) []const u8 { return self._return_value; } -pub fn setReturnValue(self: *BeforeUnloadEvent, value: []const u8, frame: *Frame) !void { - self._return_value = try frame.dupeString(value); +pub fn setReturnValue(self: *BeforeUnloadEvent, value: []const u8) !void { + self._return_value = try self._proto._arena.dupe(u8, value); } pub const JsApi = struct {