diff options
| author | Maxime Coste <frrrwww@gmail.com> | 2014-05-24 02:35:08 +0100 |
|---|---|---|
| committer | Maxime Coste <frrrwww@gmail.com> | 2014-05-24 02:35:08 +0100 |
| commit | a6de024c1fb9b1bcc04d9cea48c10131bb2f4168 (patch) | |
| tree | 4dfa4785bce64ecda2478e724cfa295accfe8619 /src/modification.cc | |
| parent | 1544a006c9cde5c3fd19ee763dd9d39ac2633f6d (diff) | |
Fix Modification
Diffstat (limited to 'src/modification.cc')
| -rw-r--r-- | src/modification.cc | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/modification.cc b/src/modification.cc index 2539ea3a..876463f1 100644 --- a/src/modification.cc +++ b/src/modification.cc @@ -165,6 +165,12 @@ std::vector<Modification> compute_modifications(memoryview<Buffer::Change> chang } ByteCoord num_removed_from_added = std::min(num_removed, num_added_after_pos); modif.num_added -= num_removed_from_added; + + if (change.begin.line == modif.new_coord.line) + modif.num_added.column += change.begin.column - modif.new_coord.column; + else + modif.num_added.column += change.begin.column; + modif.num_removed += num_removed - num_removed_from_added; for (auto it = next; it != res.end(); ++it) |
