diff --git a/crates/dev_container/src/docker.rs b/crates/dev_container/src/docker.rs index c02bafb195ae20e203bffdf471c4a284a44a15e0..99ce7422eee36d56e2bc53fd31d150fe2f41b16d 100644 --- a/crates/dev_container/src/docker.rs +++ b/crates/dev_container/src/docker.rs @@ -196,7 +196,7 @@ impl Docker { async fn pull_image(&self, image: &String) -> Result<(), DevContainerError> { let mut command = Command::new(&self.docker_cli); - command.args(&["pull", image]); + command.args(&["pull", "--", image]); let output = command.output().await.map_err(|e| { log::error!("Error pulling image: {e}"); diff --git a/crates/git/src/blame.rs b/crates/git/src/blame.rs index 76e622fd6d7ae490c2c869c5ed02f02a48b45cab..7597e29aee8604ce54ee278a4e8bb61e24ac6886 100644 --- a/crates/git/src/blame.rs +++ b/crates/git/src/blame.rs @@ -58,7 +58,7 @@ async fn run_git_blame( let mut child = { let span = ztracing::debug_span!("spawning git-blame command", path = path.as_unix_str()); let _enter = span.enter(); - git.build_command(&["blame", "--incremental", "--contents", "-"]) + git.build_command(&["blame", "--incremental", "--contents", "-", "--"]) .arg(path.as_unix_str()) .stdin(Stdio::piped()) .stdout(Stdio::piped()) diff --git a/crates/git/src/repository.rs b/crates/git/src/repository.rs index 6d17641c6ef9afafe7967f3d4bd5b37ef8c363d3..b1b9af106d93e02ee61fdc436dce7d95f9a7c107 100644 --- a/crates/git/src/repository.rs +++ b/crates/git/src/repository.rs @@ -1462,7 +1462,7 @@ impl GitRepository for RealGitRepository { log::debug!("indexing SHA: {sha}, path {path:?}"); let output = git - .build_command(&["update-index", "--add", "--cacheinfo", mode, sha]) + .build_command(&["update-index", "--add", "--cacheinfo", mode, sha, "--"]) .envs(env.iter()) .arg(path.as_unix_str()) .output() @@ -1476,7 +1476,7 @@ impl GitRepository for RealGitRepository { } else { log::debug!("removing path {path:?} from the index"); let output = git - .build_command(&["update-index", "--force-remove"]) + .build_command(&["update-index", "--force-remove", "--"]) .envs(env.iter()) .arg(path.as_unix_str()) .output() @@ -2114,7 +2114,7 @@ impl GitRepository for RealGitRepository { .spawn(async move { let git = git_binary?; let output = git - .build_command(&["stash", "push", "--quiet", "--include-untracked"]) + .build_command(&["stash", "push", "--quiet", "--include-untracked", "--"]) .envs(env.iter()) .args(paths.iter().map(|p| p.as_unix_str())) .output() @@ -3146,6 +3146,7 @@ fn git_status_args(path_prefixes: &[RepoPath]) -> Vec { OsString::from("--untracked-files=all"), OsString::from("--no-renames"), OsString::from("-z"), + OsString::from("--"), ]; args.extend(path_prefixes.iter().map(|path_prefix| { if path_prefix.is_empty() { diff --git a/crates/gpui_macos/src/platform.rs b/crates/gpui_macos/src/platform.rs index 291eec54df43459e8ee15cd35d73a9dfd6e4dd15..c0f721842a5f5dcacd809b5a6d896335ca4f0e45 100644 --- a/crates/gpui_macos/src/platform.rs +++ b/crates/gpui_macos/src/platform.rs @@ -858,6 +858,7 @@ impl Platform for MacPlatform { .background_executor .spawn(async move { if let Some(mut child) = new_command("open") + .arg("--") .arg(path) .spawn() .context("invoking open command")