aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2022-10-17 22:44:42 -0700
committerGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2022-10-17 22:44:42 -0700
commit61a8490c66fdce512ed020b3b5167770e87f9f30 (patch)
tree18540f6326235a80589d9365065e0cddcb2d339e /src
parentabd6e496aba35a78c1fd88cb8a04990ec9f810c8 (diff)
downloadbun-61a8490c66fdce512ed020b3b5167770e87f9f30.tar.gz
bun-61a8490c66fdce512ed020b3b5167770e87f9f30.tar.zst
bun-61a8490c66fdce512ed020b3b5167770e87f9f30.zip
Fix empty process.argv
Diffstat (limited to 'src')
-rw-r--r--src/bun.js/node/types.zig19
1 files changed, 6 insertions, 13 deletions
diff --git a/src/bun.js/node/types.zig b/src/bun.js/node/types.zig
index 27a9cee3c..693e4e19e 100644
--- a/src/bun.js/node/types.zig
+++ b/src/bun.js/node/types.zig
@@ -1826,12 +1826,10 @@ pub const Path = struct {
pub const Process = struct {
pub fn getArgv(globalObject: *JSC.JSGlobalObject) callconv(.C) JSC.JSValue {
var vm = globalObject.bunVM();
- if (vm.argv.len == 0)
- return JSC.JSValue.createStringArray(globalObject, null, 0, false);
// Allocate up to 32 strings in stack
var stack_fallback_allocator = std.heap.stackFallback(
- 32 * @sizeOf(JSC.ZigString),
+ 32 * @sizeOf(JSC.ZigString) + (bun.MAX_PATH_BYTES + 1) + 32,
heap_allocator,
);
var allocator = stack_fallback_allocator.get();
@@ -1843,19 +1841,14 @@ pub const Process = struct {
vm.argv.len + 2,
) catch unreachable;
var args_list = std.ArrayListUnmanaged(JSC.ZigString){ .items = args, .capacity = args.len };
- args_list.items.len = 0;
// get the bun executable
// without paying the cost of a syscall to resolve the full path
- if (std.process.args().next()) |arg0| {
- std.debug.assert(arg0.len > 0);
-
- args_list.appendAssumeCapacity(
- JSC.ZigString.init(
- bun.span(arg0),
- ).withEncoding(),
- );
- }
+ args_list.appendAssumeCapacity(
+ JSC.ZigString.init(
+ std.fs.selfExePathAlloc(allocator) catch "bun",
+ ).withEncoding(),
+ );
if (vm.main.len > 0)
args_list.appendAssumeCapacity(JSC.ZigString.init(vm.main).withEncoding());