GNU bug report logs - #79892
31.0.50; recursive-edit blocks input for frames on other X connections

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: emacs; Reported by: Spencer Baugh <sbaugh@HIDDEN>; dated Tue, 25 Nov 2025 20:31:02 UTC; Maintainer for emacs is bug-gnu-emacs@HIDDEN.

Message received at 79892 <at> debbugs.gnu.org:


Received: (at 79892) by debbugs.gnu.org; 26 Nov 2025 13:03:12 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Nov 26 08:03:12 2025
Received: from localhost ([127.0.0.1]:52518 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vOFAt-00052U-V3
	for submit <at> debbugs.gnu.org; Wed, 26 Nov 2025 08:03:12 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:57428)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1vOFAq-000528-Jx
 for 79892 <at> debbugs.gnu.org; Wed, 26 Nov 2025 08:03:11 -0500
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1vOFAk-0001ns-FL; Wed, 26 Nov 2025 08:03:02 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=rZ7/gM33kPNjJD7KRcfohg8np7EkrzbMeVk3a2ZJZ5s=; b=g2r+FWxWDj4x
 jXeD42aq041C+qms5BRMlZuQ5cdAPmXfYN0yTNKG84qnHFbT1SDbNr2NdF12uOv5FJDDNTx4jzwoT
 E0R6N5m19vyJP+XOkhwle36mzITrZK1c1Hn2ERGkjSMpSaPve1EJ68itN48tCfri4f3BQsfrQ2Bke
 Bj2vkTX3tu8QU9PK1zHI0joyAsN5xK2DsGgITLz1Le8cyEuJo0pfLAZnsydQOaf9oWOIFp489r9dP
 q6iprcovtEOvgGFdBcAssERhBdsr0c7DifuAAlJ3ElCULIfqjn07UESaXl9zJsw+a+WlszOLlLhj3
 dUXvBsJbbO7lgkirzZhKjA==;
Date: Wed, 26 Nov 2025 15:02:32 +0200
Message-Id: <86cy55c5g7.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Spencer Baugh <sbaugh@HIDDEN>,
 Stefan Monnier <monnier@HIDDEN>
In-Reply-To: <ierjyzdor9o.fsf@HIDDEN>
 (bug-gnu-emacs@HIDDEN)
Subject: Re: bug#79892: 31.0.50;
 recursive-edit blocks input for frames on other X connections
References: <ierjyzdor9o.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 79892
Cc: 79892 <at> debbugs.gnu.org, app-emacs-dev@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> Cc: app-emacs-dev@HIDDEN
> Date: Tue, 25 Nov 2025 14:18:11 -0500
> From:  Spencer Baugh via "Bug reports for GNU Emacs,
>  the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN>
> 
> 
> If you have multiple frames on different X connections, entering a
> recursive edit on one of them will block input to all frames on the
> other X connections.  Input is still possible for any frames on the same
> X connection.
> 
> This happens both with actually different X servers, or with just
> multiple connections to the same X server, as can happen by making
> multiple "ssh -X" connections.  Which allows this simple recipe to
> reproduce the issue:
> 
> 1. emacs -Q --fg-daemon=test
> 2. ssh -X localhost emacsclient -c --socket-name=test
> 3. ssh -X localhost emacsclient -c --socket-name=test
> 4. M-: (recursive-edit) in one frame
> 5. Input in the other frame is blocked
> 
> This happens both --with-x-toolkit=lucid and --with-x-toolkit=gtk.

I think this is a known limitation/feature of recursive editing.  The
function does this:

  /* If we leave recursive_edit_1 below with a `throw' for instance,
     like it is done in the splash screen display, we have to
     make sure that we restore single_kboard as command_loop_1
     would have done if it were left normally.  */
  if (command_loop_level > 0)
    temporarily_switch_to_single_kboard (SELECTED_FRAME ());




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#79892; Package emacs. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 25 Nov 2025 20:30:33 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Nov 25 15:30:33 2025
Received: from localhost ([127.0.0.1]:42233 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vNzgE-0002gk-FU
	for submit <at> debbugs.gnu.org; Tue, 25 Nov 2025 15:30:32 -0500
Received: from lists.gnu.org ([2001:470:142::17]:57184)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <sbaugh@HIDDEN>)
 id 1vNyYW-0008RM-5Q
 for submit <at> debbugs.gnu.org; Tue, 25 Nov 2025 14:18:31 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <sbaugh@HIDDEN>)
 id 1vNyYL-0002GD-Dr
 for bug-gnu-emacs@HIDDEN; Tue, 25 Nov 2025 14:18:18 -0500
Received: from mxout5.mail.janestreet.com ([64.215.233.18])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <sbaugh@HIDDEN>)
 id 1vNyYJ-00021b-1O
 for bug-gnu-emacs@HIDDEN; Tue, 25 Nov 2025 14:18:16 -0500
From: Spencer Baugh <sbaugh@HIDDEN>
To: bug-gnu-emacs@HIDDEN
Subject: 31.0.50; recursive-edit blocks input for frames on other X connections
X-Debbugs-Cc: app-emacs-dev@HIDDEN
Date: Tue, 25 Nov 2025 14:18:11 -0500
Message-ID: <ierjyzdor9o.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=janestreet.com;
 s=waixah; t=1764098293;
 bh=YFdMfwapnLJ0PHTa3UpYI5i4YGTYt44XEpgdJsIOAio=;
 h=From:To:Subject:Date;
 b=z5j4HJAS5GotTFiwUd5H7AnhS1D2jy0cAv6LaG3tQaDFrgO4Rsx3jieFKRZBiUnDa
 BDdtZCg3QH/rkhAdrzrZmTeH8D+duFkgI92CSrI5SM6c9pSYV5Gi1Ps/F2g3cjLnmo
 GV/XWWSz2O7rcphIQpjYx2a+RzbO7BVdfNFWbEyTFi4vgm3RxhS+mk4myE9urSn2r8
 k5BSDo7X5/4cuBTBXsA8mByIc9q6epKDzX0Seaj2diwJS3JBjz2AeQyMzAz2QW3M81
 7igJ1cT8QUpkij/Ukgix3JaESBhWIlZkN1cBjjC2fM3CuKYxxjjppKn0weF7EaLERB
 dUJ+6fFSbOn6A==
Received-SPF: pass client-ip=64.215.233.18; envelope-from=sbaugh@HIDDEN;
 helo=mxout5.mail.janestreet.com
X-Spam_score_int: -43
X-Spam_score: -4.4
X-Spam_bar: ----
X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,
 RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001,
 RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001,
 SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 0.9 (/)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.1 (/)


If you have multiple frames on different X connections, entering a
recursive edit on one of them will block input to all frames on the
other X connections.  Input is still possible for any frames on the same
X connection.

This happens both with actually different X servers, or with just
multiple connections to the same X server, as can happen by making
multiple "ssh -X" connections.  Which allows this simple recipe to
reproduce the issue:

1. emacs -Q --fg-daemon=test
2. ssh -X localhost emacsclient -c --socket-name=test
3. ssh -X localhost emacsclient -c --socket-name=test
4. M-: (recursive-edit) in one frame
5. Input in the other frame is blocked

This happens both --with-x-toolkit=lucid and --with-x-toolkit=gtk.


In GNU Emacs 31.0.50 (build 28, x86_64-pc-linux-gnu, X toolkit, cairo
 version 1.15.12, Xaw scroll bars) of 2025-11-19 built on
 igm-qws-u22796a
Repository revision: 6df5903f1a5b8360e1df94e5469668c6afccd7d8
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12011000
System Description: Rocky Linux 8.10 (Green Obsidian)

Configured using:
 'configure --with-x-toolkit=lucid --without-gpm --without-gconf
 --without-selinux --without-imagemagick --with-modules --with-gif=no
 --with-cairo --with-rsvg --without-compress-install --with-tree-sitter
 --enable-checking=yes,glyphs --enable-check-lisp-object-type
 'CFLAGS=-O0 -g3'
 PKG_CONFIG_PATH=/usr/local/home/garnish/libtree-sitter/0.22.6-1/lib/pkgconfig/'

Configured features:
CAIRO DBUS FREETYPE GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG LIBSYSTEMD
LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP
SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER X11 XDBE XIM
XINERAMA XINPUT2 XPM XRANDR LUCID ZLIB

Important settings:
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8-unix

Major mode: Lisp Interaction

Minor modes in effect:
  server-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  minibuffer-nonselected-mode: t
  minibuffer-regexp-mode: t
  line-number-mode: t
  indent-tabs-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t

Load-path shadows:
None found.

Features:
(shadow sort mail-extr emacsbug lisp-mnt message mailcap yank-media puny
dired dired-loaddefs rfc822 mml mml-sec password-cache epa derived epg
rfc6068 epg-config gnus-util time-date mm-decode mm-bodies mm-encode
mailabbrev gmm-utils mailheader sendmail mail-parse rfc2231 rfc2047
rfc2045 ietf-drums mm-util mail-prsvr mail-utils compile
text-property-search comint subr-x ansi-osc ansi-color ring comp-run
bytecomp byte-compile comp-common rx server warnings icons cl-loaddefs
cl-lib rmc iso-transl tooltip cconv eldoc paren electric uniquify
ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/x-win x-win
term/common-win x-dnd touch-screen tool-bar dnd fontset image regexp-opt
fringe tabulated-list replace newcomment text-mode lisp-mode prog-mode
register page tab-bar menu-bar rfn-eshadow isearch easymenu timer select
scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors
frame minibuffer nadvice seq simple cl-generic indonesian philippine
cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao
korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech
european ethiopic indian cyrillic chinese composite emoji-zwj charscript
charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure
cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp
files window text-properties overlay sha1 md5 base64 format env
code-pages mule custom widget keymap hashtable-print-readable backquote
threads dbusbind inotify dynamic-setting system-font-setting
font-render-setting cairo x-toolkit xinput2 x multi-tty move-toolbar
make-network-process tty-child-frames native-compile emacs)

Memory information:
((conses 16 92932 19290) (symbols 48 6980 0) (strings 32 29814 2550)
 (string-bytes 1 952636) (vectors 16 18477)
 (vector-slots 8 223110 8542) (floats 8 53 7) (intervals 56 395 0)
 (buffers 1064 12))




Acknowledgement sent to Spencer Baugh <sbaugh@HIDDEN>:
New bug report received and forwarded. Copy sent to app-emacs-dev@HIDDEN, bug-gnu-emacs@HIDDEN. Full text available.
Report forwarded to app-emacs-dev@HIDDEN, bug-gnu-emacs@HIDDEN:
bug#79892; Package emacs. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Wed, 26 Nov 2025 13:15:01 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.