From 765b6dcfcab1479c520fcd3ce313fe0f0e45370e Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Sat, 12 Dec 2020 15:00:30 -0500 Subject: [PATCH] Unset unused markers In case of overlay leaks. --- modules/completion/ivy/config.el | 1 + modules/editor/evil/autoload/advice.el | 21 ++++++++++---------- modules/tools/lookup/autoload/lookup.el | 26 +++++++++++++------------ 3 files changed, 26 insertions(+), 22 deletions(-) diff --git a/modules/completion/ivy/config.el b/modules/completion/ivy/config.el index 8f4ee64e6..e9a09aee0 100644 --- a/modules/completion/ivy/config.el +++ b/modules/completion/ivy/config.el @@ -89,6 +89,7 @@ results buffer.") +ivy--origin)) (with-current-buffer (marker-buffer +ivy--origin) (better-jumper-set-jump +ivy--origin))) + (set-marker +ivy--origin nil) (setq +ivy--origin nil))) (after! yasnippet diff --git a/modules/editor/evil/autoload/advice.el b/modules/editor/evil/autoload/advice.el index e904e4f56..7b2300f31 100644 --- a/modules/editor/evil/autoload/advice.el +++ b/modules/editor/evil/autoload/advice.el @@ -190,16 +190,17 @@ From https://github.com/emacs-evil/evil/issues/606" (let* ((count (count-lines beg end)) (count (if (> count 1) (1- count) count)) (fixup-mark (make-marker))) - (dotimes (var count) - (if (and (bolp) (eolp)) - (join-line 1) - (let* ((end (line-beginning-position 3)) - (fill-column (1+ (- end beg)))) - (set-marker fixup-mark (line-end-position)) - (fill-region-as-paragraph beg end nil t) - (goto-char fixup-mark) - (fixup-whitespace)))) - (set-marker fixup-mark nil))) + (unwind-protect + (dotimes (var count) + (if (and (bolp) (eolp)) + (join-line 1) + (let* ((end (line-beginning-position 3)) + (fill-column (1+ (- end beg)))) + (set-marker fixup-mark (line-end-position)) + (fill-region-as-paragraph beg end nil t) + (goto-char fixup-mark) + (fixup-whitespace)))) + (set-marker fixup-mark nil)))) ;;;###autoload (defun +evil--fix-dabbrev-in-minibuffer-h () diff --git a/modules/tools/lookup/autoload/lookup.el b/modules/tools/lookup/autoload/lookup.el index dc5b94843..6d529f183 100644 --- a/modules/tools/lookup/autoload/lookup.el +++ b/modules/tools/lookup/autoload/lookup.el @@ -163,18 +163,20 @@ This can be passed nil as its second argument to unset handlers for MODES. e.g. (+lookup--run-handlers handler identifier origin) (user-error "No lookup handler selected")) (run-hook-wrapped handlers #'+lookup--run-handlers identifier origin)))) - (when (cond ((null result) - (message "No lookup handler could find %S" identifier) - nil) - ((markerp result) - (funcall (or display-fn #'switch-to-buffer) - (marker-buffer result)) - (goto-char result) - result) - (result)) - (with-current-buffer (marker-buffer origin) - (better-jumper-set-jump (marker-position origin))) - result))) + (unwind-protect + (when (cond ((null result) + (message "No lookup handler could find %S" identifier) + nil) + ((markerp result) + (funcall (or display-fn #'switch-to-buffer) + (marker-buffer result)) + (goto-char result) + result) + (result)) + (with-current-buffer (marker-buffer origin) + (better-jumper-set-jump (marker-position origin))) + result) + (set-marker origin nil)))) ;;