diff --git a/src/source_language_protocol.cpp b/src/source_language_protocol.cpp index 1d26e22..aab236e 100644 --- a/src/source_language_protocol.cpp +++ b/src/source_language_protocol.cpp @@ -1245,6 +1245,10 @@ void Source::LanguageProtocolView::setup_navigation_and_refactoring() { }; std::list terminal_output_list; + sort(edit->text_edits.begin(), edit->text_edits.end(), [](const LanguageProtocol::TextEdit &a, LanguageProtocol::TextEdit &b) { + return a.range.start < b.range.start; + }); + for(auto text_edit_it = edit->text_edits.rbegin(); text_edit_it != edit->text_edits.rend(); ++text_edit_it) { auto start_iter = view->get_iter_at_line_pos(text_edit_it->range.start.line, text_edit_it->range.start.character); auto end_iter = view->get_iter_at_line_pos(text_edit_it->range.end.line, text_edit_it->range.end.character);