diff --git a/src/normal.cc b/src/normal.cc index 67937351..31afeb90 100644 --- a/src/normal.cc +++ b/src/normal.cc @@ -1431,7 +1431,6 @@ void undo(Context& context, NormalParams params) auto ranges = compute_modified_ranges(buffer, timestamp); if (not ranges.empty()) context.selections_write_only() = std::move(ranges); - context.selections().avoid_eol(); } else context.print_status({ "nothing left to undo", get_face("Information") }); @@ -1446,7 +1445,6 @@ void redo(Context& context, NormalParams params) auto ranges = compute_modified_ranges(buffer, timestamp); if (not ranges.empty()) context.selections_write_only() = std::move(ranges); - context.selections().avoid_eol(); } else context.print_status({ "nothing left to redo", get_face("Information") }); diff --git a/test/regression/751-wrong-selection-after-undo/cmd b/test/regression/751-wrong-selection-after-undo/cmd new file mode 100644 index 00000000..a43f0dd7 --- /dev/null +++ b/test/regression/751-wrong-selection-after-undo/cmd @@ -0,0 +1 @@ +mS\d+du diff --git a/test/regression/751-wrong-selection-after-undo/in b/test/regression/751-wrong-selection-after-undo/in new file mode 100644 index 00000000..e7159c3e --- /dev/null +++ b/test/regression/751-wrong-selection-after-undo/in @@ -0,0 +1,3 @@ +{ +11, 22 +}; diff --git a/test/regression/751-wrong-selection-after-undo/selections b/test/regression/751-wrong-selection-after-undo/selections new file mode 100644 index 00000000..da9a2398 --- /dev/null +++ b/test/regression/751-wrong-selection-after-undo/selections @@ -0,0 +1,3 @@ +{ +:, : +}