diff --git a/src/richtext/richtextbuffer.cpp b/src/richtext/richtextbuffer.cpp index 7c6ee6a461..3ea7a1cd31 100644 --- a/src/richtext/richtextbuffer.cpp +++ b/src/richtext/richtextbuffer.cpp @@ -6321,7 +6321,11 @@ bool wxRichTextAction::Do() m_buffer->UpdateRanges(); m_buffer->Invalidate(wxRichTextRange(GetRange().GetStart(), GetRange().GetStart())); - UpdateAppearance(GetRange().GetStart()-1, true /* send update event */); + long caretPos = GetRange().GetStart()-1; + if (caretPos >= m_buffer->GetRange().GetEnd()) + caretPos --; + + UpdateAppearance(caretPos, true /* send update event */); wxRichTextEvent cmdEvent( wxEVT_COMMAND_RICHTEXT_CONTENT_DELETED,