diff --git a/index.js b/index.js index ce36880..6205370 100755 --- a/index.js +++ b/index.js @@ -398,8 +398,9 @@ app.get("/*@download", (req, res) => { const shellable = process.env.SHELL != "false" && process.env.SHELL; const cmdable = process.env.CMD != "false" && process.env.CMD; if (shellable || cmdable) { - const exec = process.env.SHELL == "login" ? "/usr/bin/env" : process.env.SHELL; - const args = process.env.SHELL == "login" ? ["login"] : []; + const shellArgs = process.env.SHELL.split(" "); + const exec = process.env.SHELL == "login" ? "/usr/bin/env" : shellArgs[0]; + const args = process.env.SHELL == "login" ? ["login"] : shellArgs.slice(1); const child_process = require("child_process");