1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-12-29 11:02:01 +00:00

(next_frame): Don't check frame-focus redirection in

case MINIBUF is a window.  Doing so excludes frames using MINIBUF
unless their focus is redirected, which contradicts the
specification of next-frame, and leads to infinite loops in
certain situations when cycling through windows with next-window.
This commit is contained in:
Gerd Moellmann 2000-06-30 19:21:04 +00:00
parent bb6677a88c
commit 3780bc2227
2 changed files with 18 additions and 1 deletions

View File

@ -1,3 +1,11 @@
2000-06-30 Gerd Moellmann <gerd@gnu.org>
* frame.c (next_frame): Don't check frame-focus redirection in
case MINIBUF is a window. Doing so excludes frames using MINIBUF
unless their focus is redirected, which contradicts the
specification of next-frame, and leads to infinite loops in
certain situations when cycling through windows with next-window.
2000-06-30 Kenichi Handa <handa@etl.go.jp>
* coding.c (code_convert_region): Even if the length of text is

View File

@ -934,7 +934,7 @@ next_frame (frame, minibuf)
if (FRAME_VISIBLE_P (XFRAME (f)))
return f;
}
else if (XFASTINT (minibuf) == 0)
else if (INTEGERP (minibuf) && XINT (minibuf) == 0)
{
FRAME_SAMPLE_VISIBILITY (XFRAME (f));
if (FRAME_VISIBLE_P (XFRAME (f))
@ -943,6 +943,10 @@ next_frame (frame, minibuf)
}
else if (WINDOWP (minibuf))
{
#if 0 /* I don't think the test for frame focus redirection is
correct. This excludes frames "using the current minibuffer"
when their focus isn't redirected, which contradicts the doc
string of next-frame. --gerd, 2000-06-30 */
if (EQ (FRAME_MINIBUF_WINDOW (XFRAME (f)), minibuf)
/* Check that F either is, or has forwarded its focus to,
MINIBUF's frame. */
@ -950,6 +954,11 @@ next_frame (frame, minibuf)
|| EQ (WINDOW_FRAME (XWINDOW (minibuf)),
FRAME_FOCUS_FRAME (XFRAME (f)))))
return f;
#else /* not 0 */
if (EQ (FRAME_MINIBUF_WINDOW (XFRAME (f)), minibuf)
|| EQ (WINDOW_FRAME (XWINDOW (minibuf)), f))
return f;
#endif /* not 0 */
}
else
return f;