fix: use std::env::args_os instead of std::env::args (#1698)

Apparently `std::env::args()` will panic during iteration if any
argument to the process is not valid Unicode:

https://doc.rust-lang.org/std/env/fn.args.html

Let's avoid the risk and just go with `std::env::args_os()`.

---
[//]: # (BEGIN SAPLING FOOTER)
Stack created with [Sapling](https://sapling-scm.com). Best reviewed
with [ReviewStack](https://reviewstack.dev/openai/codex/pull/1698).
* #1705
* #1703
* #1702
* __->__ #1698
* #1697
This commit is contained in:
Michael Bolin
2025-07-28 08:52:18 -07:00
committed by GitHub
parent 9102255854
commit fcd197d596
4 changed files with 13 additions and 5 deletions

View File

@@ -30,7 +30,7 @@ where
Fut: Future<Output = anyhow::Result<()>>,
{
// Determine if we were invoked via the special alias.
let argv0 = std::env::args().next().unwrap_or_default();
let argv0 = std::env::args_os().next().unwrap_or_default();
let exe_name = Path::new(&argv0)
.file_name()
.and_then(|s| s.to_str())