aboutsummaryrefslogtreecommitdiff
path: root/src/javascript/jsc/api/bun.zig
diff options
context:
space:
mode:
Diffstat (limited to 'src/javascript/jsc/api/bun.zig')
-rw-r--r--src/javascript/jsc/api/bun.zig42
1 files changed, 21 insertions, 21 deletions
diff --git a/src/javascript/jsc/api/bun.zig b/src/javascript/jsc/api/bun.zig
index 1ee9cb96d..8228139de 100644
--- a/src/javascript/jsc/api/bun.zig
+++ b/src/javascript/jsc/api/bun.zig
@@ -1150,9 +1150,6 @@ pub const Class = NewClass(
.inflateSync = .{
.rfn = JSC.wrapWithHasContainer(JSZlib, "inflateSync", false, false, true),
},
- .escapeHTML = .{
- .rfn = Bun.escapeHTML,
- },
},
.{
.main = .{
@@ -1615,39 +1612,42 @@ pub fn serve(
unreachable;
}
-pub fn escapeHTML(
- _: void,
- ctx: js.JSContextRef,
- _: js.JSObjectRef,
- _: js.JSObjectRef,
- arguments: []const js.JSValueRef,
- exception: js.ExceptionRef,
-) js.JSValueRef {
+pub export fn Bun__escapeHTML(
+ globalObject: *JSGlobalObject,
+ callframe: *JSC.CallFrame,
+) JSC.JSValue {
+ const arguments = callframe.arguments();
if (arguments.len < 1) {
- return ZigString.init("").toValue(ctx).asObjectRef();
+ return ZigString.Empty.toValue(globalObject);
}
- const input_value = arguments[0].?.value();
- const zig_str = input_value.getZigString(ctx);
+ const input_value = arguments[0];
+ const zig_str = input_value.getZigString(globalObject);
if (zig_str.is16Bit()) {
- return input_value.asObjectRef();
+ return input_value;
} else {
var input_slice = zig_str.slice();
- var escaped_html = strings.escapeHTMLForLatin1Input(ctx.bunVM().allocator, input_slice) catch {
- JSC.JSError(undefined, "Out of memory", .{}, ctx, exception);
- return null;
+ var escaped_html = strings.escapeHTMLForLatin1Input(globalObject.bunVM().allocator, input_slice) catch {
+ globalObject.vm().throwError(globalObject, ZigString.init("Out of memory").toValue(globalObject));
+ return JSC.JSValue.jsUndefined();
};
if (escaped_html.ptr == input_slice.ptr and escaped_html.len == input_slice.len) {
- return input_value.asObjectRef();
+ return input_value;
}
if (input_slice.len == 1) {
// single character escaped strings are statically allocated
- return ZigString.init(escaped_html).toValue(ctx).asObjectRef();
+ return ZigString.init(escaped_html).toValue(globalObject);
}
- return ZigString.init(escaped_html).toExternalValue(ctx).asObjectRef();
+ return ZigString.init(escaped_html).toExternalValue(globalObject);
+ }
+}
+
+comptime {
+ if (!JSC.is_bindgen) {
+ _ = Bun__escapeHTML;
}
}