diff --git a/lisp/textmodes/flyspell.el b/lisp/textmodes/flyspell.el index a66b72cfd06..11039f29630 100644 --- a/lisp/textmodes/flyspell.el +++ b/lisp/textmodes/flyspell.el @@ -2131,7 +2131,9 @@ flyspell-auto-correct-previous-word ;; only reset if a new overlay exists (setq flyspell-auto-correct-previous-pos nil) - (let ((overlay-list (overlays-in (point-min) position)) + (let ((overlay-list (seq-sort-by + #'overlay-start #'> + (overlays-in (point-min) position))) (new-overlay 'dummy-value)) ;; search for previous (new) flyspell overlay