aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/bun.js/webcore/blob.zig12
-rw-r--r--src/bun.js/webcore/body.zig4
-rw-r--r--src/napi/napi.zig21
3 files changed, 21 insertions, 16 deletions
diff --git a/src/bun.js/webcore/blob.zig b/src/bun.js/webcore/blob.zig
index 49564c1fd..b0f1df935 100644
--- a/src/bun.js/webcore/blob.zig
+++ b/src/bun.js/webcore/blob.zig
@@ -2739,17 +2739,7 @@ pub const Blob = struct {
value: JSC.JSValue,
global: *JSGlobalObject,
) JSC.JSValue {
- if (value.isError()) {
- return JSC.JSPromise.rejectedPromiseValue(global, value);
- }
-
- if (value.jsType() == .JSPromise)
- return value;
-
- return JSPromise.resolvedPromiseValue(
- global,
- value,
- );
+ return JSC.JSPromise.wrap(global, value);
}
pub fn getText(
diff --git a/src/bun.js/webcore/body.zig b/src/bun.js/webcore/body.zig
index 621acc0b3..bbdf21d5d 100644
--- a/src/bun.js/webcore/body.zig
+++ b/src/bun.js/webcore/body.zig
@@ -1136,7 +1136,9 @@ pub fn BodyMixin(comptime Type: type) type {
}
var blob = value.useAsAnyBlobAllowNonUTF8String();
- return JSC.JSPromise.wrap(globalObject, blob.toJSON(globalObject, .share));
+ const result = blob.toJSON(globalObject, .share);
+
+ return JSC.JSPromise.wrap(globalObject, result);
}
fn handleBodyAlreadyUsed(globalObject: *JSC.JSGlobalObject) JSValue {
diff --git a/src/napi/napi.zig b/src/napi/napi.zig
index e86a832b9..f747fb785 100644
--- a/src/napi/napi.zig
+++ b/src/napi/napi.zig
@@ -309,28 +309,41 @@ pub extern fn napi_create_error(env: napi_env, code: napi_value, msg: napi_value
pub extern fn napi_create_type_error(env: napi_env, code: napi_value, msg: napi_value, result: *napi_value) napi_status;
pub extern fn napi_create_range_error(env: napi_env, code: napi_value, msg: napi_value, result: *napi_value) napi_status;
pub extern fn napi_typeof(env: napi_env, value: napi_value, result: *napi_valuetype) napi_status;
-pub export fn napi_get_value_double(globalObject: napi_env, value: napi_value, result: *f64) napi_status {
+pub export fn napi_get_value_double(env: napi_env, value: napi_value, result: *f64) napi_status {
log("napi_get_value_double", .{});
- result.* = value.coerce(f64, globalObject);
+ if (!value.isNumber()) {
+ return .number_expected;
+ }
+ result.* = value.coerceToDouble(env);
return .ok;
}
-pub export fn napi_get_value_int32(globalObject: napi_env, value: napi_value, result: *i32) napi_status {
+pub export fn napi_get_value_int32(_: napi_env, value: napi_value, result: *i32) napi_status {
log("napi_get_value_int32", .{});
- result.* = value.coerce(i32, globalObject);
+ if (!value.isNumber()) {
+ return .number_expected;
+ }
+ result.* = value.to(i32);
return .ok;
}
pub export fn napi_get_value_uint32(_: napi_env, value: napi_value, result: *u32) napi_status {
log("napi_get_value_uint32", .{});
+ if (!value.isNumber()) {
+ return .number_expected;
+ }
result.* = value.to(u32);
return .ok;
}
pub export fn napi_get_value_int64(_: napi_env, value: napi_value, result: *i64) napi_status {
log("napi_get_value_int64", .{});
+ if (!value.isNumber()) {
+ return .number_expected;
+ }
result.* = value.to(i64);
return .ok;
}
pub export fn napi_get_value_bool(_: napi_env, value: napi_value, result: *bool) napi_status {
log("napi_get_value_bool", .{});
+
result.* = value.to(bool);
return .ok;
}