GNU bug report logs -
#46414
27.1; remove-hook doesn't remove entries from hook--depth-alist
Previous Next
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 46414 in the body.
You can then email your comments to 46414 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#46414
; Package
emacs
.
(Tue, 09 Feb 2021 23:53:01 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
jakanakaevangeli <jakanakaevangeli <at> chiru.no>
:
New bug report received and forwarded. Copy sent to
bug-gnu-emacs <at> gnu.org
.
(Tue, 09 Feb 2021 23:53:01 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
add-hook can add an entry to the hook symbol's hook--depth-alist
property and remove-hook doesn't remove it. This means that for each
call to eval-after-load, after-load-functions' hook--depth-alist gets a
new element when the feature is loaded, which can hinder performance.
This can also cause problems if your completing-read-function uses
(minibuffer-with-setup-hook (:append generated-function-symbol)
(read-from-minibuffer ...))
This will add a new element to minibuffer-setup-hook's the depth alist
for each completing-read session (such is the case when using
selectrum.el [1] completion function).
[1] https://github.com/raxod502/selectrum/
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#46414
; Package
emacs
.
(Thu, 16 Jun 2022 13:42:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 46414 <at> debbugs.gnu.org (full text, mbox):
jakanakaevangeli <jakanakaevangeli <at> chiru.no> writes:
> add-hook can add an entry to the hook symbol's hook--depth-alist
> property and remove-hook doesn't remove it. This means that for each
> call to eval-after-load, after-load-functions' hook--depth-alist gets a
> new element when the feature is loaded, which can hinder performance.
>
> This can also cause problems if your completing-read-function uses
>
> (minibuffer-with-setup-hook (:append generated-function-symbol)
> (read-from-minibuffer ...))
>
> This will add a new element to minibuffer-setup-hook's the depth alist
> for each completing-read session (such is the case when using
> selectrum.el [1] completion function).
(I'm going through old bug reports that unfortunately weren't resolved
at the time.)
The test case here isn't complete, so I can't test whether the problem
is still present. I think it might have been fixed by:
commit 4bd7963e2e244ace94afa59124f2637543d74ba2
Author: Stefan Monnier <monnier <at> iro.umontreal.ca>
AuthorDate: Tue Feb 22 10:18:43 2022 -0500
(add-hook, remove-hook): Fix leaks (bug#48666)
* lisp/subr.el (add-hook, remove-hook): Rewrite the hook depth
management so we only keep the info relevant to functions present on
the hook.
Do you still see this problem in Emacs 29?
--
(domestic pets only, the antidote for overdose, milk.)
bloggy blog: http://lars.ingebrigtsen.no
Added tag(s) moreinfo.
Request was from
Lars Ingebrigtsen <larsi <at> gnus.org>
to
control <at> debbugs.gnu.org
.
(Thu, 16 Jun 2022 13:42:02 GMT)
Full text and
rfc822 format available.
Reply sent
to
<jakanakaevangeli <at> chiru.no>
:
You have taken responsibility.
(Thu, 16 Jun 2022 14:09:01 GMT)
Full text and
rfc822 format available.
Notification sent
to
jakanakaevangeli <jakanakaevangeli <at> chiru.no>
:
bug acknowledged by developer.
(Thu, 16 Jun 2022 14:09:02 GMT)
Full text and
rfc822 format available.
Message #15 received at 46414-done <at> debbugs.gnu.org (full text, mbox):
Lars Ingebrigtsen <larsi <at> gnus.org> writes:
> jakanakaevangeli <jakanakaevangeli <at> chiru.no> writes:
>
>> add-hook can add an entry to the hook symbol's hook--depth-alist
>> property and remove-hook doesn't remove it. This means that for each
>> call to eval-after-load, after-load-functions' hook--depth-alist gets a
>> new element when the feature is loaded, which can hinder performance.
>>
>> This can also cause problems if your completing-read-function uses
>>
>> (minibuffer-with-setup-hook (:append generated-function-symbol)
>> (read-from-minibuffer ...))
>>
>> This will add a new element to minibuffer-setup-hook's the depth alist
>> for each completing-read session (such is the case when using
>> selectrum.el [1] completion function).
>
> (I'm going through old bug reports that unfortunately weren't resolved
> at the time.)
>
> The test case here isn't complete, so I can't test whether the problem
> is still present. I think it might have been fixed by:
>
> commit 4bd7963e2e244ace94afa59124f2637543d74ba2
> Author: Stefan Monnier <monnier <at> iro.umontreal.ca>
> AuthorDate: Tue Feb 22 10:18:43 2022 -0500
>
> (add-hook, remove-hook): Fix leaks (bug#48666)
>
> * lisp/subr.el (add-hook, remove-hook): Rewrite the hook depth
> management so we only keep the info relevant to functions present on
> the hook.
>
> Do you still see this problem in Emacs 29?
>
> --
> (domestic pets only, the antidote for overdose, milk.)
> bloggy blog: http://lars.ingebrigtsen.no
Yep it was fixed by this commit and also the related
commit db92e83797bf2f1af4e0b0383283a49968746b51
Author: Stefan Monnier <monnier <at> iro.umontreal.ca>
Date: Fri Apr 23 16:50:12 2021 -0400
* lisp/subr.el (add-hook): Try and fix bug#46326
Use `eq` indexing on `hook--depth-alist`.
(remove-hook): Remove old entries from `hook--depth-alist`.
Thanks.
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Fri, 15 Jul 2022 11:24:04 GMT)
Full text and
rfc822 format available.
This bug report was last modified 1 year and 297 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.