WIP

Nathan Sobo created

Change summary

crates/editor/src/display_map/patch.rs | 16 ++++++++++++----
1 file changed, 12 insertions(+), 4 deletions(-)

Detailed changes

crates/editor/src/display_map/patch.rs 🔗

@@ -61,11 +61,19 @@ impl Patch {
                     }
                     (Some(old_edit), Some(new_edit)) => {
                         if old_edit.new.start <= new_edit.old.start {
-                            intermediate_end = old_edit.new.end;
-                            merge_edits(&mut pending_old_edit, old_edits.next().unwrap())
+                            if old_edit.new.start <= intermediate_end {
+                                intermediate_end = old_edit.new.end;
+                                merge_edits(&mut pending_old_edit, old_edits.next().unwrap())
+                            } else {
+                                break;
+                            }
                         } else {
-                            intermediate_end = new_edit.old.end;
-                            merge_edits(&mut pending_new_edit, new_edits.next().unwrap());
+                            if new_edit.old.start <= intermediate_end {
+                                intermediate_end = new_edit.old.end;
+                                merge_edits(&mut pending_new_edit, new_edits.next().unwrap());
+                            } else {
+                                break;
+                            }
                         }
                     }
                 }