GNU bug report logs -
#19566
(unload-feature 'misearch) breaks isearch
Previous Next
Reported by: Ivan Shmakov <ivan <at> siamics.net>
Date: Sun, 11 Jan 2015 11:39:02 UTC
Severity: minor
Tags: patch
Fixed in version 25.1
Done: Ivan Shmakov <ivan <at> siamics.net>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your message dated Fri, 23 Jan 2015 14:25:55 +0000
with message-id <8761bxpo98.fsf <at> violet.siamics.net>
and subject line Re: bug#19566: unloading support for misearch
has caused the debbugs.gnu.org bug report #19566,
regarding (unload-feature 'misearch) breaks isearch
to be marked as done.
(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)
--
19566: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=19566
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
[Message part 3 (text/plain, inline)]
Package: emacs
Severity: minor
Tags: patch
Using unload-feature to unload misearch.el also undefines the
autoloaded variables, which breaks isearch.el as it still uses
them.
Please thus consider the patch MIMEd.
* lisp/misearch.el (multi-isearch-unload-function): New function
to retain definitions of autoloaded variables when unloading.
(misearch-unload-function): New alias.
--
FSF associate member #7257 np. The Middle Path — David Modica B6A0 230E 334A
[Message part 4 (text/diff, inline)]
--- a/lisp/misearch.el
+++ b/lisp/misearch.el
@@ -377,6 +377,25 @@
(goto-char (if isearch-forward (point-min) (point-max)))
(isearch-forward-regexp nil t)))
+(defun multi-isearch-unload-function ()
+ "Remove autoloaded variables from `unload-function-defs-list'.
+Also prevent the feature from being reloaded via `isearch-mode-hook'."
+ (remove-hook 'isearch-mode-hook 'multi-isearch-setup)
+ (let ((defs (list (car unload-function-defs-list)))
+ (auto '(multi-isearch-next-buffer-function
+ multi-isearch-next-buffer-current-function
+ multi-isearch-current-buffer
+ multi-isearch-buffer-list multi-isearch-file-list)))
+ (dolist (def (cdr unload-function-defs-list))
+ (unless (and (symbolp def)
+ (memq def auto))
+ (push def defs)))
+ (setq unload-function-defs-list (nreverse defs))
+ ;; .
+ nil))
+
+(defalias 'misearch-unload-function 'multi-isearch-unload-function)
+
(provide 'multi-isearch)
(provide 'misearch)
[Message part 5 (message/rfc822, inline)]
Version: 25.1
I’ve pushed the change proposed to ‘master’ last Saturday;
closing.
commit 0aaa5d699bf95afb152317f0788b8e2d2042f59d
CommitDate: Sat Jan 17 19:35:52 2015 +0000
Unloading support for misearch.
* lisp/misearch.el (multi-isearch-unload-function): New function.
(misearch-unload-function): New alias.
Fixes: debbugs:19566
--
FSF associate member #7257 http://boycottsystemd.org/ … 3013 B6A0 230E 334A
This bug report was last modified 10 years and 119 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.