unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: JD Smith <jdtsmith@gmail.com>, martin rudalics <rudalics@gmx.at>
Cc: 64405@debbugs.gnu.org
Subject: bug#64405: `toggle-side-windows' with 3 or more side windows leads to error; reproducer included
Date: Thu, 06 Jul 2023 10:24:05 +0300	[thread overview]
Message-ID: <83mt09iju2.fsf@gnu.org> (raw)
In-Reply-To: <4C5644CF-B41B-4AB7-AEF4-151133ADEE04@gmail.com> (message from JD Smith on Sat, 1 Jul 2023 15:48:25 -0400)

> From: JD Smith <jdtsmith@gmail.com>
> Date: Sat, 1 Jul 2023 15:48:25 -0400
> 
> 
> From a fresh Emacs 28 emacs -Q:
> 
> (progn
>   (display-buffer-in-side-window (get-buffer-create "AA") '((side . right) (slot . -1)))
>   (display-buffer-in-side-window (get-buffer-create "BB") '((side . right) (slot . 0)))
>   (display-buffer-in-side-window (get-buffer-create "CC") '((side . right) (slot . 1)))
>   (window-toggle-side-windows)
>   (window-toggle-side-windows))
> 
> Leads to the error `Specified root is not an ancestor of specified window’.  This arises as:
> 
> Debugger entered--Lisp error: (error "Specified root is not an ancestor of specified win...")
>   delete-other-windows-internal(nil #<window 16>)
>   window-state-put((((min-height . 4) (min-width . 10) (min-height-ignore . 2) (min-width-ignore . 7) (min-height-safe . 1) (min-width-safe . 2) (min-pixel-height . 64) (min-pixel-width . 70) (min-pixel-height-ignore . 32) (min-pixel-width-ignore . 49) (min-pixel-height-safe . 16) (min-pixel-width-safe . 14)) leaf (pixel-width . 591) (pixel-height . 560) (total-width . 84) (total-height . 35) (normal-height . 1.0) (normal-width . 1.0) (parameters (clone-of . #<window 3 on *scratch*>)) (buffer #<buffer *scratch*> (selected . t) (hscroll . 0) (fringes 8 8 nil nil) (margins nil) (scroll-bars nil 3 t nil 0 t nil) (vscroll . 0) (dedicated) (point . #<marker at 480 in *scratch*>) (start . #<marker at 1 in *scratch*>))) #<window 16>)
>   window-toggle-side-windows()
>   (progn (display-buffer-in-side-window (get-buffer-create "AA") '((side . right) (slot . -1))) (display-buffer-in-side-window (get-buffer-create "BB") '((side . right) (slot . 0))) (display-buffer-in-side-window (get-buffer-create "CC") '((side . right) (slot . 1))) (window-toggle-side-windows) (window-toggle-side-windows))
>   (progn (progn (display-buffer-in-side-window (get-buffer-create "AA") '((side . right) (slot . -1))) (display-buffer-in-side-window (get-buffer-create "BB") '((side . right) (slot . 0))) (display-buffer-in-side-window (get-buffer-create "CC") '((side . right) (slot . 1))) (window-toggle-side-windows) (window-toggle-side-windows)))
>   elisp--eval-last-sexp(nil)
>   eval-last-sexp(nil)
>   funcall-interactively(eval-last-sexp nil)
>   command-execute(eval-last-sexp)
> 
> Strangely no error is seen with 1 or 2 side windows.

Martin, any ideas or comments?  This still happens in Emacs 29 and
Emacs 30.

Thanks.





  reply	other threads:[~2023-07-06  7:24 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-07-01 19:48 bug#64405: `toggle-side-windows' with 3 or more side windows leads to error; reproducer included JD Smith
2023-07-06  7:24 ` Eli Zaretskii [this message]
2023-07-07 13:56   ` martin rudalics
2023-07-08  9:06     ` Eli Zaretskii

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

  List information: https://www.gnu.org/software/emacs/

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

  git send-email \
    --in-reply-to=83mt09iju2.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=64405@debbugs.gnu.org \
    --cc=jdtsmith@gmail.com \
    --cc=rudalics@gmx.at \
    /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 public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).