uutils/findutils

`-printf` panics on an invalid-UTF-8 format string (exit 101)

開放

#816 建立於 2026年8月7日

 (1 則留言) (0 個反應) (0 位負責人)Rust (96 個分叉)user submission
good first issue

倉庫指標

星標
 (635 顆星)
PR 合併指標
 (平均合併 26天 6小時) (30 天內合併 46 個 PR)

描述

A -printf format string that is not valid UTF-8 panics during argument collection, before the format parser is ever reached.

$ find d -printf $'%\xff|\n'
thread 'main' panicked at ...: called `Result::unwrap()` on an `Err` value
$ echo $?
101

The panic is in std::env::args, which panics on non-UTF-8 arguments. Collecting via std::env::args_os and handling the invalid-UTF-8 case explicitly would let this produce a normal error (or match GNU, which accepts arbitrary bytes in the format string and passes them through).

貢獻者指南