Subject: Re: bug#32672: 27.0.50; image resize on window resizing

From: martin rudalics <[email-masked]>
Date: Thu, 13 Sep 2018 09:46:34 +0200

> It's not straightforward to find a hook that covers all cases, it seems
 > at least it should be called when an image-mode buffer comes to the top
 > of buffer-list, and the closest hook for that is buffer-list-update-hook.

I still don't get why you need to know whether the image-mode buffer
comes to top in order to decide on resizing the image.

 > I see that when it's buffer-local, then it guarantees that the affected
 > image-mode buffer is always current-buffer at the time of hook invocation.

There should not be any such guarantee.

 > It's fired every time the image-mode buffer comes to the top, even when
 > calling quit-window on another buffer that gives way to the image-mode buffer.
 >
 > The only case when buffer-list-update-hook doesn't run is when the
 > image-mode buffer comes to the top by `C-x <C-left>' (previous-buffer),
 > whereas `C-x <right>' (next-buffer) works fine.

This must be a bug but I don't understand how it could happen.
'switch-to-prev-buffer' calls 'set-window-buffer-start-and-point'
which calls 'set-window-buffer' which calls 'record-window-buffer'
which should call 'buffer-list-update-hook'.  Can you trace while it
fails for you?

Thanks, martin