summaryrefslogtreecommitdiff
path: root/src/selection.cc
diff options
context:
space:
mode:
authorMaxime Coste <frrrwww@gmail.com>2015-06-05 13:10:30 +0100
committerMaxime Coste <frrrwww@gmail.com>2015-06-05 13:10:30 +0100
commit87fcfda5089345f698d442f9411130a3fb1eba7f (patch)
tree4689d542278ef007d93f51cf6d9f21b29e10ebae /src/selection.cc
parent7cddaacc5d946377eb825f35968b393d229a1bc3 (diff)
Avoid buffer end in compute_modified_ranges
Diffstat (limited to 'src/selection.cc')
-rw-r--r--src/selection.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/selection.cc b/src/selection.cc
index 602edd96..1ea2fdbb 100644
--- a/src/selection.cc
+++ b/src/selection.cc
@@ -321,6 +321,11 @@ Vector<Selection> compute_modified_ranges(Buffer& buffer, size_t timestamp)
for (auto& sel : ranges)
{
+ if (buffer.is_end(sel.anchor()))
+ sel.anchor() = buffer.back_coord();
+ if (buffer.is_end(sel.cursor()))
+ sel.cursor() = buffer.back_coord();
+
if (sel.anchor() != sel.cursor())
sel.cursor() = buffer.char_prev(sel.cursor());
}