diff options
Diffstat (limited to 'lisp/smerge-mode.el')
-rw-r--r-- | lisp/smerge-mode.el | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/lisp/smerge-mode.el b/lisp/smerge-mode.el index 742de9c2b96..add5d718c25 100644 --- a/lisp/smerge-mode.el +++ b/lisp/smerge-mode.el @@ -321,13 +321,15 @@ according to `smerge-match-conflict'.") (popup-menu smerge-mode-menu) ;; Install overlay. (setq o (make-overlay (match-beginning i) (match-end i))) - (overlay-put o 'face 'highlight) - (sit-for 0) - (popup-menu (if (smerge-check 2) - smerge-mode-menu - smerge-context-menu)) - ;; Delete overlay. - (delete-overlay o)))) + (unwind-protect + (progn + (overlay-put o 'face 'highlight) + (sit-for 0) + (popup-menu (if (smerge-check 2) + smerge-mode-menu + smerge-context-menu))) + ;; Delete overlay. + (delete-overlay o))))) ;; There's no conflict at point, the text-props are just obsolete. (save-excursion (let ((beg (re-search-backward smerge-end-re nil t)) |