diff options
author | 2023-07-04 01:18:13 -0700 | |
---|---|---|
committer | 2023-07-04 01:18:13 -0700 | |
commit | a76b07a802ddddcb1ac5791de73554f1e553bd0f (patch) | |
tree | 233cb7f17421a584328535d45ae494f56b5e9bee | |
parent | 33bc507f7453beecd831295b576941b2d5fa6cfd (diff) | |
download | bun-a76b07a802ddddcb1ac5791de73554f1e553bd0f.tar.gz bun-a76b07a802ddddcb1ac5791de73554f1e553bd0f.tar.zst bun-a76b07a802ddddcb1ac5791de73554f1e553bd0f.zip |
cleanup
-rw-r--r-- | src/napi/napi.zig | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/src/napi/napi.zig b/src/napi/napi.zig index 92b03aef0..5caef4547 100644 --- a/src/napi/napi.zig +++ b/src/napi/napi.zig @@ -339,9 +339,11 @@ inline fn maybeAppendNull(ptr: anytype, doit: bool) void { ptr.* = 0; } } -pub export fn napi_get_value_string_latin1(env: napi_env, value: napi_value, buf_ptr: [*c]u8, bufsize: usize, result_ptr: ?*usize) napi_status { +pub export fn napi_get_value_string_latin1(env: napi_env, value: napi_value, buf_ptr_: ?[*:0]c_char, bufsize: usize, result_ptr: ?*usize) napi_status { log("napi_get_value_string_latin1", .{}); defer value.ensureStillAlive(); + var buf_ptr = @ptrCast(?[*:0]u8, buf_ptr_); + const str = value.toBunString(env); var buf = buf_ptr orelse { if (result_ptr) |result| { @@ -362,8 +364,8 @@ pub export fn napi_get_value_string_latin1(env: napi_env, value: napi_value, buf var buf_ = buf[0..bufsize]; - if (bufsize == 0) { - buf_ = bun.sliceTo(buf_ptr, 0); + if (bufsize == NAPI_AUTO_LENGTH) { + buf_ = bun.sliceTo(buf_ptr.?, 0); if (buf_.len == 0) { if (result_ptr) |result| { result.* = 0; @@ -372,7 +374,7 @@ pub export fn napi_get_value_string_latin1(env: napi_env, value: napi_value, buf } } const written = str.encodeInto(buf_, .latin1) catch unreachable; - const max_buf_len = if (bufsize == 0) buf_.len else bufsize; + const max_buf_len = buf_.len; if (result_ptr) |result| { result.* = written; @@ -391,7 +393,7 @@ pub export fn napi_get_value_string_latin1(env: napi_env, value: napi_value, buf /// If buf is NULL, this method returns the length of the string (in bytes) /// via the result parameter. /// The result argument is optional unless buf is NULL. -pub extern fn napi_get_value_string_utf8(env: napi_env, value: napi_value, buf_ptr: [*c]u8, bufsize: usize, result_ptr: ?*usize) napi_status ; +pub extern fn napi_get_value_string_utf8(env: napi_env, value: napi_value, buf_ptr: [*c]u8, bufsize: usize, result_ptr: ?*usize) napi_status; pub export fn napi_get_value_string_utf16(env: napi_env, value: napi_value, buf_ptr: ?[*]char16_t, bufsize: usize, result_ptr: ?*usize) napi_status { log("napi_get_value_string_utf16", .{}); defer value.ensureStillAlive(); @@ -415,8 +417,8 @@ pub export fn napi_get_value_string_utf16(env: napi_env, value: napi_value, buf_ var buf_ = buf[0..bufsize]; - if (bufsize == 0) { - buf_ = bun.sliceTo(buf_ptr, 0); + if (bufsize == NAPI_AUTO_LENGTH) { + buf_ = bun.sliceTo(@ptrCast([*:0]u16, buf_ptr.?), 0); if (buf_.len == 0) { if (result_ptr) |result| { result.* = 0; @@ -425,7 +427,7 @@ pub export fn napi_get_value_string_utf16(env: napi_env, value: napi_value, buf_ } } - const max_buf_len = if (bufsize == 0) buf_.len else bufsize; + const max_buf_len = buf_.len; const written = (str.encodeInto(std.mem.sliceAsBytes(buf_), .utf16le) catch unreachable) >> 1; if (result_ptr) |result| { |