Skip empty AppliedPatchSets for sending changes.

This commit is contained in:
Lucien Greathouse
2022-08-03 17:19:23 -04:00
parent 2a6a8b42a6
commit 565c12405e
2 changed files with 11 additions and 3 deletions

View File

@@ -154,7 +154,9 @@ impl JobThreadContext {
for id in affected_ids { for id in affected_ids {
if let Some(patch) = compute_and_apply_changes(&mut tree, &self.vfs, id) { if let Some(patch) = compute_and_apply_changes(&mut tree, &self.vfs, id) {
applied_patches.push(patch); if !patch.is_empty() {
applied_patches.push(patch);
}
} }
} }
} }
@@ -253,7 +255,9 @@ impl JobThreadContext {
apply_patch_set(&mut tree, patch_set) apply_patch_set(&mut tree, patch_set)
}; };
self.message_queue.push_messages(&[applied_patch]); if !applied_patch.is_empty() {
self.message_queue.push_messages(&[applied_patch]);
}
} }
} }

View File

@@ -19,7 +19,7 @@ pub struct PatchSet {
pub updated_instances: Vec<PatchUpdate>, pub updated_instances: Vec<PatchUpdate>,
} }
impl<'a> PatchSet { impl PatchSet {
pub fn new() -> Self { pub fn new() -> Self {
PatchSet { PatchSet {
removed_instances: Vec::new(), removed_instances: Vec::new(),
@@ -76,6 +76,10 @@ impl AppliedPatchSet {
updated: Vec::new(), updated: Vec::new(),
} }
} }
pub fn is_empty(&self) -> bool {
self.removed.is_empty() && self.added.is_empty() && self.updated.is_empty()
}
} }
#[derive(Debug, Clone, Serialize, Deserialize)] #[derive(Debug, Clone, Serialize, Deserialize)]