diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/vcs/mod.rs | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/vcs/mod.rs b/src/vcs/mod.rs index 6b94a72..50ef720 100644 --- a/src/vcs/mod.rs +++ b/src/vcs/mod.rs @@ -25,10 +25,14 @@ pub trait VcsInfo { fn remote_branch_diff(&self) -> Option<(usize, usize)>; fn is_dirty(&self) -> bool { + let diff = self.remote_branch_diff(); self.has_modified_files() || self.has_staged_files() || self.has_new_files() - || !self.remote_branch_diff().is_some() + || !diff.is_some() + || diff + .map(|(local, remote)| local > 0 || remote > 0) + .unwrap_or(false) } fn is_error(&self) -> bool { |