forked from extern/nushell
Filter out empty glob patterns to "glob" command (#6707)
* Filter out empty glob patterns An empty argument to the "glob" command will now produce an empty result. Working towards nushell/nushell#6653. * Run `cargo fmt --all` Just autoformatted the repo so that CI passes and we have a consistent code format across modules. * Treat empty glob argument as error The glob command will now report an empty string argument as an error instead of silently ignoring it. See https://github.com/nushell/nushell/pull/6707#discussion_r993345013. * Add tests for glob command Two small tests for the glob command, one to check that the empty string errors it, and another to sanity check the '*' glob, have been added. * Rename glob sanity check star test Co-authored-by: Kyle Anderson <kyle.anderson@uwaterloo.ca>
This commit is contained in:
@ -99,6 +99,16 @@ impl Command for Glob {
|
||||
let glob_pattern: Spanned<String> = call.req(engine_state, stack, 0)?;
|
||||
let depth = call.get_flag(engine_state, stack, "depth")?;
|
||||
|
||||
if glob_pattern.item.is_empty() {
|
||||
return Err(ShellError::GenericError(
|
||||
"glob pattern must not be empty".to_string(),
|
||||
"".to_string(),
|
||||
Some(glob_pattern.span),
|
||||
Some("add characters to the glob pattern".to_string()),
|
||||
Vec::new(),
|
||||
));
|
||||
}
|
||||
|
||||
let folder_depth = if let Some(depth) = depth {
|
||||
depth
|
||||
} else {
|
||||
|
Reference in New Issue
Block a user