From e15fa58b96cb9e12b742641c1818fec26d146d29 Mon Sep 17 00:00:00 2001 From: overtrue Date: Fri, 3 Apr 2026 22:06:23 +0800 Subject: [PATCH] test(cli): reject empty cors bucket path --- crates/cli/src/commands/cors.rs | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/crates/cli/src/commands/cors.rs b/crates/cli/src/commands/cors.rs index 85c2ff9..b7716d7 100644 --- a/crates/cli/src/commands/cors.rs +++ b/crates/cli/src/commands/cors.rs @@ -377,10 +377,12 @@ fn parse_bucket_path(path: &str) -> Result<(String, String), String> { return Err("Bucket path must be in format alias/bucket".to_string()); } - Ok(( - parts[0].to_string(), - parts[1].trim_end_matches('/').to_string(), - )) + let bucket = parts[1].trim_end_matches('/'); + if bucket.is_empty() { + return Err("Bucket path must be in format alias/bucket".to_string()); + } + + Ok((parts[0].to_string(), bucket.to_string())) } fn parse_cors_configuration(contents: &str) -> Result { @@ -531,6 +533,7 @@ mod tests { assert!(parse_bucket_path("").is_err()); assert!(parse_bucket_path("local").is_err()); assert!(parse_bucket_path("/bucket").is_err()); + assert!(parse_bucket_path("local///").is_err()); } #[test]