# HG changeset patch # User Karl Heuer # Date 801351263 0 # Node ID 3ca56969ba07cb4a84dda796ce6c48661ca20c6a # Parent 3f5326542cf64fe9b65018a5eb745e2181009d10 (Fdelete_frame): When updating Vdefault_minibuffer_frame, insist on a frame on the proper keyboard. diff -r 3f5326542cf6 -r 3ca56969ba07 src/frame.c --- a/src/frame.c Wed May 24 20:50:54 1995 +0000 +++ b/src/frame.c Wed May 24 21:34:23 1995 +0000 @@ -1014,9 +1014,9 @@ } } - /* If we've deleted Vdefault_minibuffer_frame, try to find another - one. Prefer minibuffer-only frames, but also notice frames - with other windows. */ + /* If we've deleted this keyboard's default_minibuffer_frame, try to + find another one. Prefer minibuffer-only frames, but also notice + frames with other windows. */ if (EQ (frame, FRAME_KBOARD (f)->Vdefault_minibuffer_frame)) { Lisp_Object frames; @@ -1030,16 +1030,20 @@ frames = XCONS (frames)->cdr) { Lisp_Object this; + struct frame *f1; this = XCONS (frames)->car; if (!FRAMEP (this)) abort (); - f = XFRAME (this); + f1 = XFRAME (this); - if (FRAME_HAS_MINIBUF_P (f)) + /* Consider only frames on the same kboard + and only those with minibuffers. */ + if (FRAME_KBOARD (f) == FRAME_KBOARD (f1) + && FRAME_HAS_MINIBUF_P (f1)) { frame_with_minibuf = this; - if (FRAME_MINIBUF_ONLY_P (f)) + if (FRAME_MINIBUF_ONLY_P (f1)) break; } }