From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Aleksandr Vityazev via "Bug reports for GNU Emacs, the Swiss army knife of text editors" Newsgroups: gmane.emacs.bugs Subject: bug#69140: 30.0.50; [elpa/vertico] Emacs with vertico-mode freezes if font is too big Date: Wed, 21 Feb 2024 19:15:57 +0300 Message-ID: <874je14wua.fsf@disroot.org> References: <87il2qas3z.fsf@disroot.org> <86bk8hx2kf.fsf@gnu.org> <87plwxyf5w.fsf@yahoo.com> Reply-To: Aleksandr Vityazev Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="1988"; mail-complaints-to="usenet@ciao.gmane.io" Cc: mail@daniel-mendler.de, Eli Zaretskii , 69140@debbugs.gnu.org To: Po Lu Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Wed Feb 21 17:17:11 2024 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1rcpHT-0000EQ-DA for geb-bug-gnu-emacs@m.gmane-mx.org; Wed, 21 Feb 2024 17:17:11 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rcpH1-0000eE-Jt; Wed, 21 Feb 2024 11:16:43 -0500 Original-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 ) id 1rcpH0-0000dy-5E for bug-gnu-emacs@gnu.org; Wed, 21 Feb 2024 11:16:42 -0500 Original-Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rcpGz-00043U-FC for bug-gnu-emacs@gnu.org; Wed, 21 Feb 2024 11:16:41 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rcpHK-0008Qw-G3 for bug-gnu-emacs@gnu.org; Wed, 21 Feb 2024 11:17:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Aleksandr Vityazev Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 21 Feb 2024 16:17:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 69140 X-GNU-PR-Package: emacs Original-Received: via spool by 69140-submit@debbugs.gnu.org id=B69140.170853219032328 (code B ref 69140); Wed, 21 Feb 2024 16:17:02 +0000 Original-Received: (at 69140) by debbugs.gnu.org; 21 Feb 2024 16:16:30 +0000 Original-Received: from localhost ([127.0.0.1]:51568 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rcpGn-0008PL-3q for submit@debbugs.gnu.org; Wed, 21 Feb 2024 11:16:29 -0500 Original-Received: from layka.disroot.org ([178.21.23.139]:56328) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rcpGk-0008Oy-6a for 69140@debbugs.gnu.org; Wed, 21 Feb 2024 11:16:27 -0500 Original-Received: from localhost (localhost [127.0.0.1]) by disroot.org (Postfix) with ESMTP id C2F7A413DF; Wed, 21 Feb 2024 17:16:01 +0100 (CET) X-Virus-Scanned: SPAM Filter at disroot.org Original-Received: from layka.disroot.org ([127.0.0.1]) by localhost (disroot.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id wOlOH_LpoLtb; Wed, 21 Feb 2024 17:16:00 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=disroot.org; s=mail; t=1708532160; bh=BQ+QOiunY87+gIGVXx0F2vLkJKeka9MN48DWsdaQc1w=; h=From:To:Cc:Subject:In-Reply-To:References:Date; b=MGq0hxt9Rbk0YKBcFiQaKnupeyW4FPgi9l5OxqzyQ4wy3cZJx06d+JTPfUt7jyIX3 v/Ixx/zlDDhVXOXXX6r4ZH9jUVoRiE9D1qKE0Ih4eZT6YB6gOYK8Okkq2974no7xOh 8aMQMwpulrN42NaX+pdhkyY96N366aezDjBA6O3VPtG7T7V1ZbNigo3YZP5tKgBaIu q0Q5oWrPcXEtBL/nGz0PLVQUMz2nhrwLRWHr1zD0FOc60W0vzfzNNWT1xUvORQ0Dkd bDLuO//c7pUZkgIGbh7QF6XrexVVg/kUXdXuwICx9tesuS6AIBtIgdA3J5EN5VK938 DCxVzSbm/UHPg== In-Reply-To: <87plwxyf5w.fsf@yahoo.com> (Po Lu's message of "Thu, 15 Feb 2024 22:29:15 +0800") X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:280401 Archived-At: On 2024-02-15 22:29, Po Lu wrote: > Eli Zaretskii writes: > >>> Cc: mail@daniel-mendler.de >>> Date: Thu, 15 Feb 2024 14:23:28 +0300 >>> From: Aleksandr Vityazev via "Bug reports for GNU Emacs, >>> the Swiss army knife of text editors" >>> >>> Vertico version 1.7, version 1.3 has also been tested, is incompatible >>> with the changes made by the commit - >>> caea0c1649d1df96b811c1388fde396e66bc356b. This commit was found via >>> git bisect. >>> >>> To reproduce: >>> 1. Run emacs -Q >>> 2. M-x load-library vertico RET >>> 3. M-x vertico-mode RET >>> 4. Set a large font, the following is suitable for my 13 inch monitor: >>> (set-face-attribute 'default nil :family "monospace" :height 440) >>> 5. Call M-x >>> Emacs should freeze, sometimes you can unfreeze it with a few presses >>> of C-g >> >> Thanks, but why do you think the bug is in Emacs and not in vertico? >> The fact that you can unfreeze Emacs with C-g indicates that some Lisp >> is involved in what probably is an infloop. At the very least, could >> you please catch a Lisp backtrace when you type C-g, so that we could >> see what Lisp is involved? Also, what exactly does vertico do with >> resizing the mini-window, and what should be the value of >> resize-mini-windows for reproducing this issue. > > Also, if at all possible, please attempt to interrupt Emacs while it is > so frozen under GDB until you have collected several unique backtraces > containing entries for `redisplay_internal', and post them here. No backtrace yet, but I found another reproducer without vertico, all used packages are from Emacs core. Configured using: 'configure CONFIG_SHELL=/gnu/store/v9p25q9l5nnaixkhpap5rnymmwbhf9rp-bash-minimal-5.1.16/bin/bash SHELL=/gnu/store/v9p25q9l5nnaixkhpap5rnymmwbhf9rp-bash-minimal-5.1.16/bin/bash --prefix=/gnu/store/1gij4r65kyw6lm2m9clqpraigivjgzq9-emacs-test-test --enable-fast-install --with-pgtk --without-libsystemd --enable-checking=yes,glyphs --enable-check-lisp-object-type --with-native-compilation=no --with-cairo --with-modules --disable-build-details 'CFLAGS=-O0 -g3'' 1. Run emacs -Q 2. Paste the following code into the scratch buffer and run eval-buffer --8<---------------cut here---------------start------------->8--- (load-library "transient") (fido-vertical-mode 1) (defclass test-transient-multi (transient-option) () ((key :initform "-") (argument :initform "-") (multi-value :initform t) (reader :initform completing-read-multiple)) "") (transient-define-argument test:--1 () :description "test1" :class 'transient-option :shortarg "a" :argument "test1=") (transient-define-argument test:--2 () :description "test2" :class 'test-transient-multi :key "r" :argument "test2" :multi-value t :prompt "Test2: " :reader (lambda (prompt _initial-input _history) (completing-read-multiple prompt '("nonsdlslde" "slsdl" "2323" "ldslld" "30203" "llx" "ldslsd")))) (transient-define-argument test:--3 () :description "test3" :class 'test-transient-multi :key "l" :argument "test3" :multi-value t :prompt "Test3: " :reader (lambda (prompt _initial-input _history) (completing-read-multiple prompt '("nonsdlslde" "slsdl" "2323" "ldslld" "30203" "llx" "ldslsd")))) (transient-define-argument test:--4 () :description "test4" :class 'test-transient-multi :key "y" :argument "test4" :multi-value t :prompt "Test4: " :reader (lambda (prompt _initial-input _history) (completing-read-multiple prompt '("nonsdlslde" "slsdl" "2323" "ldslld" "30203" "llx" "ldslsd")))) (defun test-hello () "" (interactive) (message "hello")) (transient-define-prefix test-dispatch () ["Test parameters" (test:--1) (test:--2) (test:--3) (test:--4) ] [["Search" ("s" "test" test-hello)]]) (set-face-attribute 'default nil :family "monospace" :height 440) --8<---------------cut here---------------end--------------->8--- 3. M-x test-dispatch 4. Try playing with the parameters test1, test2, test3, test4. At the same time you can put Emacs into full screen mode and back into windowed mode, where it will occupy half of the screen. Initially, calling the parameters test1, test2, test3, test4 in the transient window will be delayed and everything can be canceled with C-g, after a few repetitions Emacs hangs completely. -- Best regards, Aleksandr Vityazev