all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: help-gnu-emacs@gnu.org
Subject: Re: Gnus + Gmail + IMAP
Date: Tue, 30 Jun 2015 23:04:09 +0300	[thread overview]
Message-ID: <83a8vh2cau.fsf@gnu.org> (raw)
In-Reply-To: <CAKu-7WyZzX2m-t5R-8XHoo4i7j07dph82Rka4u+aKYTi35MA3w@mail.gmail.com>

> Date: Tue, 30 Jun 2015 21:10:44 +0200
> From: Alexander Shukaev <haroogan@gmail.com>
> Cc: help-gnu-emacs <help-gnu-emacs@gnu.org>
> 
> God damn it. I don't know if you remember my post from yesterday where I was
> talking which hooks to attach `minibuffer-line--update' to in order to update
> minibuffer line on window and buffer switches properly. The conclusion was
> 
> (add-hook 'buffer-list-update-hook #'minibuffer-line--update)
> (add-hook 'window-configuration-change-hook #'minibuffer-line--update)
> 
> By examining the GDB output (which obviously repeats):
> 
> #1084 0x00000004001f0978 in run_hook_with_args (nargs=1, args=0x7a8d40,
> funcall=0x4001f0434 <funcall_nil>) at
> C:/Users/Haroogan/Projects/GitHub/MINGW-packages/mingw-w64-emacs-git/src/emacs/src/eval.c:2529
> #1085 0x00000004001f04e2 in Frun_hook_with_args (nargs=1, args=0x7a8d40) at
> C:/Users/Haroogan/Projects/GitHub/MINGW-packages/mingw-w64-emacs-git/src/emacs/src/eval.c:2390
> #1086 0x00000004001f0a0a in run_hook (hook=-17119289912) at
> C:/Users/Haroogan/Projects/GitHub/MINGW-packages/mingw-w64-emacs-git/src/emacs/src/eval.c:2543
> #1087 0x00000004001f049c in Frun_hooks (nargs=1, args=0x7a8e88) at
> C:/Users/Haroogan/Projects/GitHub/MINGW-packages/mingw-w64-emacs-git/src/emacs/src/eval.c:2372
> 
> I've somehow recalled those hooks. It turns out that this one
> 
> (add-hook 'buffer-list-update-hook #'minibuffer-line--update)
> 
> is seems to be causing the infinite recursion and most importantly only in the
> case of `M-x gnus RET' as I haven't experienced that before.

Yes, the recursion is clearly visible in the Lisp backtrace.

> What could be the problem here, Eli?

I think this part of the Lisp backtrace should give you a clue:

  "format-time-string" (0x8318d0)
  "propertize" (0x831b18)
  "let*" (0x831d68)
  "eval" (0x831fc8)
  "format-mode-line" (0x833810)
  "minibuffer-line--update" (0x833e88)
  "run-hooks" (0x833fc8)
  "format-time-string" (0x8356a0)
  "propertize" (0x8358e8)
  "let*" (0x835b38)
  "eval" (0x835d98)
  "format-mode-line" (0x8375e0)
  "minibuffer-line--update" (0x837c58)
  "run-hooks" (0x837d98)
  "utf-7-imap-post-read-conversion" (0x839ce8)
  "decode-coding-string" (0x83a380)
  "utf7-decode" (0x83a8d0)
  "nnimap-get-groups" (0x83ae40)
  "nnimap-request-newgroups" (0x83b3b0)
  "gnus-request-newgroups" (0x83b920)
  "gnus-ask-server-for-new-groups" (0x83be90)

Somehow, minibuffer-line--update calls format-mode-line, which calls
format-time-string, which again calls run-hooks, which again calls
minibuffer-line--update.  Look into your hook and see how this can
happen.



  reply	other threads:[~2015-06-30 20:04 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-29 18:51 Gnus + Gmail + IMAP Alexander Shukaev
2015-06-29 19:12 ` Jorge A. Alfaro-Murillo
2015-06-29 19:25   ` Alexander Shukaev
2015-06-29 20:26     ` Alexander Shukaev
2015-06-29 20:29       ` Alexander Shukaev
2015-06-30  7:28         ` Rainer M Krug
2015-06-30  9:35           ` Alexander Shukaev
2015-06-30 11:14             ` Alexander Shukaev
2015-06-30 15:24               ` Eli Zaretskii
2015-06-30 15:57                 ` Alexander Shukaev
2015-06-30 16:23                   ` Eli Zaretskii
2015-06-30 16:28                     ` Alexander Shukaev
2015-06-30 16:45                       ` Eli Zaretskii
2015-06-30 16:49                         ` Alexander Shukaev
2015-06-30 17:01                           ` Eli Zaretskii
2015-06-30 17:45                             ` Alexander Shukaev
2015-06-30 17:50                               ` Eli Zaretskii
     [not found]                                 ` <CAKu-7WzduwfWZpuwjbRRH3rxkAttcf2kX8NWByGxRFQpxk5iEw@mail.gmail.com>
2015-06-30 19:10                                   ` Alexander Shukaev
2015-06-30 20:04                                     ` Eli Zaretskii [this message]
2015-06-30 20:09                                       ` Eli Zaretskii
2015-06-30 20:45                                         ` Alexander Shukaev
2015-07-01 15:20                                           ` Eli Zaretskii
2015-07-01  3:37                                       ` Jude DaShiell
2015-07-01 14:37                                         ` Jorge A. Alfaro-Murillo
2015-06-29 20:59     ` Ian Zimmerman
2015-06-29 21:24       ` Jorge A. Alfaro-Murillo
2015-06-30  9:29       ` Alexander Shukaev
2015-06-30 11:20         ` Alberto Luaces
2015-06-30 11:23           ` Alexander Shukaev
2015-06-30 12:23             ` Alexander Shukaev
2015-06-30 14:08               ` Jorge A. Alfaro-Murillo
2015-06-30  4:48 ` Vaidheeswaran C
2015-07-07 16:26 ` J. David Boyd
2015-07-07 20:17   ` Ruben Maher
2015-07-07 20:58     ` Ian Zimmerman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=83a8vh2cau.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=help-gnu-emacs@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.