Fix selection going out of bounds

Which happened when starting the selection at the end of the commandline.
In this case, selections still interact weirdly with autosuggestions (the
first character of the suggestion appears to be part of the selection
when it's not).

Fixes #6680

(cherry-picked from commit 99851c09b31f5e5478b9c1a2197606f9676dcfc2)
This commit is contained in:
Johannes Altmanninger 2020-02-29 09:43:26 +01:00
parent 764420f272
commit e6248cf7be

View File

@ -3477,7 +3477,7 @@ bool reader_get_selection(size_t *start, size_t *len) {
reader_data_t *data = current_data_or_null();
if (data != nullptr && data->sel_active) {
*start = data->sel_start_pos;
*len = std::min(data->sel_stop_pos - data->sel_start_pos, data->command_line.size());
*len = std::min(data->sel_stop_pos, data->command_line.size()) - data->sel_start_pos;
result = true;
}
return result;