From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Po Lu via "Bug reports for GNU Emacs, the Swiss army knife of text editors" Newsgroups: gmane.emacs.bugs Subject: bug#65332: 29.1; browse-url calls pgtk-backend-display-class, which errors when window-system is nil Date: Wed, 16 Aug 2023 15:14:46 +0800 Message-ID: <87r0o3jw61.fsf@yahoo.com> References: Reply-To: Po Lu Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="29463"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Cc: 65332@debbugs.gnu.org To: "Trent W. Buck" Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Wed Aug 16 09:16:32 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 1qWAlZ-0007O6-RC for geb-bug-gnu-emacs@m.gmane-mx.org; Wed, 16 Aug 2023 09:16:29 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qWAlA-0001MI-UN; Wed, 16 Aug 2023 03:16:04 -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 1qWAl8-0001KK-Sa for bug-gnu-emacs@gnu.org; Wed, 16 Aug 2023 03:16:02 -0400 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 1qWAl8-0006dV-JS for bug-gnu-emacs@gnu.org; Wed, 16 Aug 2023 03:16:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qWAl8-0002ZQ-Ba for bug-gnu-emacs@gnu.org; Wed, 16 Aug 2023 03:16:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Po Lu Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 16 Aug 2023 07:16:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 65332 X-GNU-PR-Package: emacs Original-Received: via spool by 65332-submit@debbugs.gnu.org id=B65332.16921701049796 (code B ref 65332); Wed, 16 Aug 2023 07:16:02 +0000 Original-Received: (at 65332) by debbugs.gnu.org; 16 Aug 2023 07:15:04 +0000 Original-Received: from localhost ([127.0.0.1]:38712 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qWAkC-0002Xv-C8 for submit@debbugs.gnu.org; Wed, 16 Aug 2023 03:15:04 -0400 Original-Received: from sonic306-20.consmr.mail.ne1.yahoo.com ([66.163.189.82]:34701) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qWAkA-0002X2-6u for 65332@debbugs.gnu.org; Wed, 16 Aug 2023 03:15:03 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1692170096; bh=bKLcCrYOkdz/HZMPFefL8ZNDKhCtpPecLzqpJcMo8Ok=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To; b=JbewMs2JRnPEh+hrfkHqQwOUxi7NLWB1W/ms0z44mJwpVWLMaiSnHIJDa5kNamruibCa5WUkA+7hYzYFg3F657lbifELG5rAnML1H1xA0nZMJDnMNYbDznM8c4xM/u4kFarkF6DCBiHEUxpd4vL8bYz8UAOGHkzCjdM7h8ojgqBht2l6f0caESMH+8tSJZ2RUO+c5y8USwwQVjS4GaGhPA3eqd9hXn2NW/kOFPu6GZnmXDbgqgfmfui9kgdGqr+aYbjgkmS3NC4uqqmq7iZi2/zqqv2qkVKn68y7+4+bsMCYmpzLMqCrCrbMdkKLzdEBILR+h4lpnamVnPrfURzhqQ== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1692170096; bh=4zxYj8imN5GZBR4Q2Y3LGa+ouH8q109Ry1mXanUY+wR=; h=X-Sonic-MF:From:To:Subject:Date:From:Subject; b=uMGZMRDdVtuq29lv3dm9ytf7jwmnkYZwwuABrill38RDATyrYDtSKg/IVFNqUnfDRkrm+KtkOx/M9i4adw3RpEij6A980DZRb9UtYYRvJ5ELyIxHDLe05j5HU0ov8X6YSAPRWMgxBCxLHYLQCdyaROC6uOc4H7y42dnfuAKbgmdQKensgf4dLuevWVciEhErAcBihkG/YFW3wbenuQ2bgxizpSzdrptqEsAT85sTqlYUgywNXQ3N6fSB+G6yshHz1zEwC7TPU5X8LyfVp8GxdUsQtdIHFIV0JFlH5Yxf6fAfz6eL+obQfVk204dCtMpbQTNkz7XCJOIBKkKCWQWQ0w== X-YMail-OSG: 0MxyNwcVM1kFBUxEBnxRRLrElKyLbXqLgonECrUXQmZCEkIJZJKyQNJ4MD.jWSf plY6IG5VGkIspCaDR30Q3Pi2IcYvwOD9NO0Eoyqf8A1OEU5kW2eEKME2km1e9qc5uO3zwMku8kZ_ Qq4KN4vKcPIddJSjBwMJy8K.YdXO1tV.DVtiBsHoK4osLcyY_xaOScUn2n8sQZiHsJnaM1QCBBh6 PU3r2jEhEWbok4ljmtYPCcKfdRbqiluUGbJQcwyamX9v9YhQgdnW.b_iW5HMLWcnk3M2dZdCVedu ASNT4AhPfqZrkNrpw5Jd_sYWq969Zzoa2adYl4mcZwQUS5zE0OdYWHfzGoAyff.cdzwX5ih2iKrU Qp8nsU_NPCAPAGaIfSDEMynwxfy0OvPRI0cXBLHikTF.xhxetHWYGJLd0P6aW7QL2jvVGDnKgb3p dTmI6DzKxslJwWlcuZx5MdR9oqqF0jGrHSqKLaue91XXqg2302tR6.6geMwCGCoqK7qWmer_JIay 7ls_gpFQUgpCkj1URxCn.tiwZabAbShyhzSuTfBuvjUKd5n4F3F4POlCsbV1N8DJElbIssA6b9a1 i59AZnD8TbiOPT5G7r4eURrigQ3Fxbx3TEtiRzdXVRSgE.buYJg21AXT198KO8OYMZ4T3n9E4Wo0 CMlqXyLD8XD4G8r_kDQ_6_QiOzmT26isQlOg4is_l0rDFhwHCylrHBHRs3k78FW3G9zcVcmZsEIC 9GZW0rJBsGSlp8iUpvoel1.07Y8z_hIYnLhkNzYL85d9y.hkKg_GHTEruMMnAzm1KujTySizYahs eEW4CHMwM2cmGsqvGmjQfJ70caldS6WQlJ4u21XQNs X-Sonic-MF: X-Sonic-ID: 86016ebc-a5f0-4d25-83bc-d6090a829a3a Original-Received: from sonic.gate.mail.ne1.yahoo.com by sonic306.consmr.mail.ne1.yahoo.com with HTTP; Wed, 16 Aug 2023 07:14:56 +0000 Original-Received: by hermes--production-sg3-69654d8bd-752gm (Yahoo Inc. Hermes SMTP Server) with ESMTPA ID 29f0f29e98323be5eadf41d44e460880; Wed, 16 Aug 2023 07:14:51 +0000 (UTC) In-Reply-To: (Trent W. Buck's message of "Wed, 16 Aug 2023 15:45:38 +1000") X-Mailer: WebService/1.1.21732 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo 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:267555 Archived-At: "Trent W. Buck" writes: > Minimum recipe to reproduce: > > 1. Get emacs with pgtk, start daemon, connect to it from a tty frame: > > twb@hera[Desktop]$ emacs-pgtk --version > GNU Emacs 29.1 > Copyright (C) 2023 Free Software Foundation, Inc. > GNU Emacs comes with ABSOLUTELY NO WARRANTY. > You may redistribute copies of GNU Emacs > under the terms of the GNU General Public License. > For more information about these matters, see the file named COPYING. > > twb@hera[Desktop]$ emacs-pgtk --quick --daemon > Due to a limitation in GTK 3, Emacs built with PGTK will simply exit when a > display connection is closed. The problem is especially difficult to fix, > such that Emacs on Wayland with multiple displays is unlikely ever to be able > to survive disconnects. > Starting Emacs daemon. > > twb@hera[Desktop]$ emacsclient --create-frame --tty > > 2. M-x browse url RET https://example.com RET > > Get this error: > > Frames are not in use or not initialized > > 3. Explicitly setting browse-url-browser-function to eww-browse-url does not help. > > With toggle-debug-on-error, the backtrace I got during normal usage was: > > Debugger entered--Lisp error: (error "Frames are not in use or not initialized") > browse-url("http://ix.io/4DCN") > find-file-at-point() > ido-file-internal(selected-window) > ido-find-file() > funcall-interactively(ido-find-file) > command-execute(ido-find-file) > > The problem is it's calling (pgtk-backend-display-class) even when the current frame isn't a GTK frame, I think? > > ELISP> (browse-url "https://example.com") > *** Eval error *** Frames are not in use or not initialized > ELISP> (w3m-browse-url "https://example.com") > nil > ELISP> browse-url-browser-function > w3m-browse-url > ELISP> (pgtk-backend-display-class) > *** Eval error *** Frames are not in use or not initialized > ELISP> window-system > nil > ELISP> (frame-parameter nil 'display) > ":0" > ELISP> (getenv "DISPLAY") > ":0" > ELISP> (getenv "WAYLAND_DISPLAY") > "wayland-0" Your analysis of the problem is correct. But to correct it, we need to know what display our users expect the browser window to open in under such a situation?