Skip to content
This repository was archived by the owner on May 28, 2025. It is now read-only.

Commit 351b2ac

Browse files
committed
Make bad shlex parsing a pretty error
1 parent b814b63 commit 351b2ac

File tree

1 file changed

+14
-1
lines changed

1 file changed

+14
-1
lines changed

src/tools/jsondocck/src/main.rs

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,20 @@ fn get_commands(template: &str) -> Result<Vec<Command>, ()> {
149149
}
150150
}
151151

152-
let args = cap.name("args").map_or(vec![], |m| shlex::split(m.as_str()).unwrap());
152+
let args = cap.name("args")
153+
.map_or(Some(vec![]), |m| shlex::split(m.as_str()));
154+
155+
let args = match args {
156+
Some(args) => args,
157+
None => {
158+
print_err(
159+
&format!("Invalid arguments to shlex::split: `{}`", cap.name("args").unwrap().as_str()),
160+
lineno
161+
);
162+
errors = true;
163+
continue;
164+
}
165+
};
153166

154167
if !cmd.validate(&args, commands.len(), lineno) {
155168
errors = true;

0 commit comments

Comments
 (0)