`zed --wait --diff <left> <right>` currently waits for the entire window to close instead of just the diff itself, due to the combination of - `zed --diff` adds the cwd to the paths to open (see #45131), and - passing a directory to `zed --wait` blocks until the Zed window is closed (see #44936), which doesn't distinguish between explicit paths and the one `zed --diff` adds Fixed by only running the `zed --wait <dir>` logic to block until the window is closed in case the user actually passed any non-diff paths. I've confirmed locally that it works, though I wasn't really sure how to write a good test for this. Self-Review Checklist: - [x] I've reviewed my own diff for quality, security, and reliability - [x] Unsafe blocks (if any) have justifying comments - [x] The content is consistent with the [UI/UX checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist) - [ ] Tests cover the new/changed behavior - [x] Performance impact has been considered and is acceptable Release Notes: - `zed --wait --diff <left> <right>` now blocks until the diff is closed, and not until the entire window is closed.
Cli
Testing
You can test your changes to the cli crate by first building the main zed binary:
cargo build -p zed
And then building and running the cli crate with the following parameters:
cargo run -p cli -- --zed ./target/debug/zed.exe