Remove unwrap in GitTraversal::synchronize_statuses (cherry-pick #23555) (#23556)
gcp-cherry-pick-bot[bot]
,
Cole Miller
, and
Marshall
created
Cherry-picked Remove unwrap in GitTraversal::synchronize_statuses
(#23555)
Release Notes:
- Fixed a potential panic in handling of Git statuses.
Co-authored-by: Marshall <marshall@zed.dev>
Co-authored-by: Cole Miller <cole@zed.dev>
Co-authored-by: Marshall <marshall@zed.dev>
Change summary
crates/worktree/src/worktree.rs | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
Detailed changes
@@ -5725,7 +5725,8 @@ impl<'a> GitTraversal<'a> {
} else if entry.is_file() {
// For a file entry, park the cursor on the corresponding status
if statuses.seek_forward(&PathTarget::Path(repo_path.as_ref()), Bias::Left, &()) {
- self.current_entry_summary = Some(statuses.item().unwrap().status.into());
+ // TODO: Investigate statuses.item() being None here.
+ self.current_entry_summary = statuses.item().map(|item| item.status.into());
} else {
self.current_entry_summary = Some(GitSummary::UNCHANGED);
}