From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: martin rudalics Newsgroups: gmane.emacs.bugs Subject: bug#39977: 28.0.50; Unhelpful stack trace Date: Sat, 14 Mar 2020 19:55:34 +0100 Message-ID: <01305dbc-c69b-baf9-f0bf-1e5b8c04d970@gmx.at> References: <83zhcs80e5.fsf@gnu.org> <83imj88tpt.fsf@gnu.org> <550fbc22-09db-d30b-c194-8f26b5dca05f@gmx.at> <83wo7o6nxs.fsf@gnu.org> <60dd4ced-a2e5-ed17-0570-b7bdd2a557af@gmx.at> <83blozckn2.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="115470"; mail-complaints-to="usenet@ciao.gmane.io" Cc: enometh@meer.net, 39977@debbugs.gnu.org To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sat Mar 14 19:56:48 2020 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 1jDBxo-000Tvn-1V for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 14 Mar 2020 19:56:48 +0100 Original-Received: from localhost ([::1]:47440 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jDBxm-0006yh-KS for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 14 Mar 2020 14:56:46 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:51640) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jDBx5-0006yb-Gn for bug-gnu-emacs@gnu.org; Sat, 14 Mar 2020 14:56:04 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1jDBx4-0005Tg-8S for bug-gnu-emacs@gnu.org; Sat, 14 Mar 2020 14:56:03 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:56273) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1jDBx4-0005TT-55 for bug-gnu-emacs@gnu.org; Sat, 14 Mar 2020 14:56:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jDBx4-0001J5-4m for bug-gnu-emacs@gnu.org; Sat, 14 Mar 2020 14:56:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: martin rudalics Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 14 Mar 2020 18:56:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 39977 X-GNU-PR-Package: emacs Original-Received: via spool by 39977-submit@debbugs.gnu.org id=B39977.15842121505005 (code B ref 39977); Sat, 14 Mar 2020 18:56:02 +0000 Original-Received: (at 39977) by debbugs.gnu.org; 14 Mar 2020 18:55:50 +0000 Original-Received: from localhost ([127.0.0.1]:34013 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jDBwr-0001If-U7 for submit@debbugs.gnu.org; Sat, 14 Mar 2020 14:55:50 -0400 Original-Received: from mout.gmx.net ([212.227.17.22]:35871) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jDBwp-0001IS-LH for 39977@debbugs.gnu.org; Sat, 14 Mar 2020 14:55:48 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1584212136; bh=rS/OdSWFnSz9/gAg1TZCE634aSijQsHb6HhTpb0nXKo=; h=X-UI-Sender-Class:Subject:From:To:Cc:References:Date:In-Reply-To; b=BEHis4M7hUhtViri160lrjwSJ7xMeW0xBynqwfsbmButkHeN8CE5R1BCld+bHyuQx 73/P3Hn4UMxPJWgFUJr4ItX1ta+UNHxzNfHIz3c6q4FFFHw2TcKl/3g7DYVrGvaJuv Hf4XJpn4Q8sMzVb9QpfwKImN+/TrPgYgkCzHpu5M= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Original-Received: from [192.168.1.100] ([212.95.5.175]) by mail.gmx.com (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MXXyJ-1ioDdX2Mc3-00YyP9; Sat, 14 Mar 2020 19:55:36 +0100 In-Reply-To: Content-Language: en-US X-Provags-ID: V03:K1:MUryw7g74F70abUzVPutLBBo6yTwwoUR34h0+NBISwBnNFK6Frc LIyTtwgrLubZ+SVyIGnDwgd3rlzptl1NBJ7viq1d9t0xLq9Q8/dOqlbVrgMxWqI8CIBtAsj wtL4sLN6Z2sB8KkKTrY+riZDBrjD89pXlI/G1c51KRdVCuxoffuWGtzHlkKVaxUXshCYgqq ZoxiX29tKUxWT3evYgpWw== X-UI-Out-Filterresults: notjunk:1;V03:K0:uLhJDjwx+uM=:2nkgcojojHYT7IaYDUr7iN xSGpflqOk5ZkeKYS/1OWrQ1N0Th/kvPUukUCAAbyOOkjMXxJzGehFV+nqnZ+s3s3hXc23pisM aa/AnxDgORn2rlNOou5Q0+w3s411Wd1M12QmLcJXC+zxsuW0LmXDdWctfMlyBT4fZ/kPCpB+o D37M9ybKas/KjPDzc2/KH5xRQoKtQs08hh6sKlahL1Tm5JQD9CjhhSpRA+7jmoWlh24aRw0w7 dTIdUmU29MV6QM/nx2mSALXReJ0BhmJJj4pQipL/z15H80D4Z4yl9eiJsqKxZ7NkS+FJmCoaZ chmFinLM5yCBiYGklE7/Bb86dCzSh4c46LmGxiElWrmNXdQUO2kONp4m9gm5NDt9tK45h5M5K qoEaIZVw4OjcvINZkHaVx8NA9aPHQCkZwQMly/LqQNVN6iDpVyavxkB9C6622aAcju3sqhAEJ gqfqfZ9EWcBujhbxEBBaFCpYlBE3MLaW41CRK8yIVVHZoRKw1rV3qF2K/rIFSxtFkXyCZpBrr q07/XBCWa8xNdEQk0Hub/cunCdNv7JBI4j0TpiN2vMgBV2yi6oWoibWn1g9aM0OcLnBDxnC+t 4ZFo2T96nBOTCBr2xKRGVpzHIxszWoTcf+i4ZaQbnmsvwlzBLTM0HlhPjBrrKuM29/843smvT HBNhfrTHmxQj9fXjnZHQjlEv7DG8FtR1JtFknjsRB7kEKBg7y1QoQlI7nQdMNUJT3zOba58qJ c4Y7g95PtQvyb5mezs0N6IUMSEtnYD85iUAw4DkzRnLlSVOFIhg4QSJ6P0aCUEHO7KL8Mz4A X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 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" Xref: news.gmane.io gmane.emacs.bugs:177364 Archived-At: Maybe the following two changes would not harm: (1) In fast_set_selected_frame check whether FRAME is live before doing selected_frame = frame; (2) In display_mode_lines check whether new_frame is live before doing selected_frame = new_frame; and maybe also for old_selected_frame before selected_frame = old_selected_frame; Maybe display_mode_lines should better use record_unwind_protect (fast_set_selected_frame, selected_frame); What was the rationale for protecting frame reselection when drawing the tab bar or the tool bar and not protecting it when drawing mode lines? I have no idea whether these could help in any way but since we are in redisplay and the selected frame has become dead all of a sudden ... Another point is obviously the do_switch_frame (frame1, 0, 1, Qnil); sf = SELECTED_FRAME (); combination in delete_frame itself. If frame1 is dead, we select the frame we are about to delete. But this should not produce the abort at hand since the assignment to selected_frame happens in do_switch_frame. Guarding that assignment would not harm either and then we're done IMO. WDYT? martin