Subject: Re: bug#20122: auto-revert and list-buffers cause buffer recentering

From: Eli Zaretskii <[email-masked]>
Date: Mon, 16 Mar 2015 22:07:28 +0200

> Date: Mon, 16 Mar 2015 12:20:03 -0600
> From: Mario Valencia <[email-masked]>
> 
> do the following:
> (global-auto-revert-mode)
> (setq global-auto-revert-non-file-buffers t)
> 
> then M-x list-buffers
> now open a file and move down a page at least. the file begins
> auto-recentering. the line with the cursor moves toward the center.

It's a bug in tabulated-list-print: it calls 'recenter' without
ensuring that its buffer, in this case "*Buffer List*", is in the
selected window.  Here's the Lisp backtrace to prove this:

  Lisp Backtrace:
  "recenter" (0x82dd80)
  "tabulated-list-print" (0x82e08c)
  "tabulated-list-revert" (0x82e384)
  "revert-buffer" (0x82e678)
  "auto-revert-handler" (0x82e978)
  "auto-revert-buffers" (0x82ed4c)
  "apply" (0x82ed48)
  "byte-code" (0x82efcc)
  "timer-event-handler" (0x82f40c)

I think the easiest solution is simply to remove the call to
'recenter', it's not really needed there, just a nicety.