From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Thiago Melo Newsgroups: gmane.emacs.bugs Subject: bug#63589: [PATCH] 29.0.91; crash after creating graphical frames via emacsclient when compiled with cairo-xcb Date: Wed, 24 May 2023 05:15:46 +0000 Message-ID: References: <871qj9246a.fsf@yahoo.com> <83o7mdrc3y.fsf@gnu.org> <83bkidr37i.fsf@gnu.org> <87wn11yyi4.fsf@yahoo.com> <87edn9ytbo.fsf@yahoo.com> <835y8kr5re.fsf@gnu.org> <87pm6sy5rb.fsf@yahoo.com> <83wn10ppa1.fsf@gnu.org> <874jo3yjly.fsf@yahoo.com> <837cszp9cc.fsf@gnu.org> <87cz2rw8pz.fsf@yahoo.com> <83y1lfnqwb.fsf@gnu.org> <87y1lfuqyb.fsf@yahoo.com> <83wn0znn7j.fsf@gnu.org> <87lehevaqz.fsf@yahoo.com> <83r0r6o3zk.fsf@gnu.org> <87edn6v2v3.fsf@yahoo.com> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="12115"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 63589@debbugs.gnu.org, Eli Zaretskii To: Po Lu Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Wed May 24 07:17:20 2023 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 1q1gsC-0002wU-8K for geb-bug-gnu-emacs@m.gmane-mx.org; Wed, 24 May 2023 07:17:20 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q1grv-0005XP-Jb; Wed, 24 May 2023 01:17:03 -0400 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 1q1gru-0005TT-Cf for bug-gnu-emacs@gnu.org; Wed, 24 May 2023 01:17:02 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q1gru-0001eQ-4C for bug-gnu-emacs@gnu.org; Wed, 24 May 2023 01:17:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1q1grt-000823-Vo for bug-gnu-emacs@gnu.org; Wed, 24 May 2023 01:17:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Thiago Melo Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 24 May 2023 05:17:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 63589 X-GNU-PR-Package: emacs Original-Received: via spool by 63589-submit@debbugs.gnu.org id=B63589.168490540530847 (code B ref 63589); Wed, 24 May 2023 05:17:01 +0000 Original-Received: (at 63589) by debbugs.gnu.org; 24 May 2023 05:16:45 +0000 Original-Received: from localhost ([127.0.0.1]:40923 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1q1grc-00081T-Sw for submit@debbugs.gnu.org; Wed, 24 May 2023 01:16:45 -0400 Original-Received: from mail-yw1-f171.google.com ([209.85.128.171]:50199) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1q1grM-00080s-QO for 63589@debbugs.gnu.org; Wed, 24 May 2023 01:16:43 -0400 Original-Received: by mail-yw1-f171.google.com with SMTP id 00721157ae682-561deaad117so7282877b3.0 for <63589@debbugs.gnu.org>; Tue, 23 May 2023 22:16:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1684905383; x=1687497383; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=GErKFvx6L8SUNkc0ZdJOSQrEEzBIa2yLne4NjhDFY9M=; b=nDfMQyDUe+zJ9UAnxQz8e+4ozI4SGGakC87bvc5W2AMY2UZA/iNF3XwCqj17+1hwBX TasVvWi8dfIQQ2aOdC3c/S4ngVaVIblIz1NPCJSoSDqWZhTydjaAlUDDXIm+eE+OrATP UV+MI9XC458fXIpX4Dyw4Se1ZinL8GcznHd/6LyWbeAydx1lM8xsDpmymC3924op2clw LBhj0HLNAG2mH4qkGBsrp+jkg1s8A/kkgAdJI5xFIZSDanPFLh1oWMi6kHTGxnklCtTn ylggmB1rV8F4b0gqbwM2DzDSBA1PUbqf8Yn+XABdsmpesL5K6GBOaboVqGX0LZxRA7+R YPYg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1684905383; x=1687497383; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=GErKFvx6L8SUNkc0ZdJOSQrEEzBIa2yLne4NjhDFY9M=; b=Rb9pL4meIR/j+a6S+8sBKVIGOQOoGRv4t5k5PCKQOEhB3/vT6z0mbLndUBhrq8IPNI /eCQalcFynNh1fQVLwIqS68FNU/m5Y8ilW+6iHwadT64pTlCRpqCJfJXnF0JORchvfQv FyaIBwWLnbC6L20GHTO40IzqOjY49gxW/UoIWqnB3w4ngbN0xGsSPuqUa70uGx/KvR3v OJcuzZuv7VMrtNsWJZAEURf6ggBNtMN8fCQGubojAv7wxG5sHRTrOgptnvabvq5udaNa 36gZ5KBRkKZ9RRoC+VzrYvZ+VnbeCTgecg3JMnj7g0iPOAl5itSbmZV5KdJ8csHZiBnY NtKA== X-Gm-Message-State: AC+VfDw+1h7AhM4lCUldjgd7YhC2wMDDvTadbjE83IFr6Tjn4Ohmt0qA qEzKU5pln5wMeGt+qTAOBC1r/4FmZXuwyh+Kq28= X-Google-Smtp-Source: ACHHUZ6znOtuchnQTtbGd4CWBhNmXXf0zBP3t7I0/MioTd05Q8A/8uozMGyp7Y/aFjLCLWUVxykXMcZtDLwwFt5t8nI= X-Received: by 2002:a81:6903:0:b0:539:1b13:3d64 with SMTP id e3-20020a816903000000b005391b133d64mr17673239ywc.48.1684905383184; Tue, 23 May 2023 22:16:23 -0700 (PDT) In-Reply-To: <87edn6v2v3.fsf@yahoo.com> 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:262272 Archived-At: > > Which is why I asked whether x-delete-terminal etc. could call a > > function that is different from what we call when we exit. > > Why is what Emacs does upon exiting relevant here? > The problem occurs when a display connection is closed while Emacs > wants to stay running. Cairo keeps a pointer to the xcb connection, > and if by some chance a pointer with the same value is returned the > next time a display connection is opened, it loses. Regardless of what Emacs does at exit, you were right to point out about calling, eg, the elisp function `delete-terminal', Po Lu. It ends up always calling XCloseDisplay and, in fact, the last patch doesn't cover it. I've tested it, and it even triggers the bug with Lucid and GTK builds. Here's an updated script to trigger the bug in all these cases: #+begin_src bash # repeatedly create graphical frames and close them all for k in $(seq 10); do emacsclient -c -n -a /bin/false && sleep 1 && emacsclient -e "(delete-terminal)" done #+end_src