[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#8917: browse-url-xdg-open can fail to return
From: |
Lawrence Mitchell |
Subject: |
bug#8917: browse-url-xdg-open can fail to return |
Date: |
Wed, 22 Jun 2011 10:18:28 +0100 |
User-agent: |
Gnus/5.110018 (No Gnus v0.18) Emacs/24.0.50 (gnu/linux) |
In GNU Emacs 24.0.50.1 (x86_64-unknown-linux-gnu, GTK+ Version 2.24.4)
of 2011-06-06 on e4300lm
Windowing system distributor `The X.Org Foundation', version 11.0.11001000
configured using `configure '-C''
If Emacs uses browse-url-xdg-open to open URLs, and the browser
is /not/ already running, browse-url starts a new browser process
and then sits waiting for it to complete. Control does not
return to Emacs until the browser is quit.
I believe this is an unintended side-effect of this change:
| 2010-10-08 Andreas Schwab <schwab@linux-m68k.org>
| * net/browse-url.el (browse-url-xdg-open): Remove use of /bin/sh.
I think the correct fix is to just discard output from the
command and return immediately (nohup is then also not needed).
Here's a patch:
--8<---------------cut here---------------start------------->8---
>From c7183b3a4886a65951b155b1e0d57e0b50e19504 Mon Sep 17 00:00:00 2001
From: Lawrence Mitchell <wence@gmx.li>
Date: Wed, 22 Jun 2011 10:08:29 +0100
Subject: [PATCH] browse-url: Don't wait for xdg-open to return
* net/browse-url.el (browse-url-xdg-open): Use 0, rather than nil
BUFFER in call-process.
---
lisp/ChangeLog | 5 +++++
lisp/net/browse-url.el | 2 +-
2 files changed, 6 insertions(+), 1 deletions(-)
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 1ab91cf..4511dbc 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,8 @@
+2011-06-22 Lawrence Mitchell <wence@gmx.li>
+
+ * net/browse-url.el (browse-url-xdg-open): Use 0, rather than nil
+ BUFFER in call-process.
+
2011-06-21 Tim Harper <timcharper@gmail.com>
* term/ns-win.el (ns-initialize-window-system): set
diff --git a/lisp/net/browse-url.el b/lisp/net/browse-url.el
index c1ec3f0..d9e6827 100644
--- a/lisp/net/browse-url.el
+++ b/lisp/net/browse-url.el
@@ -958,7 +958,7 @@ Galeon, Konqueror, Netscape, Mosaic, Lynx in an xterm, and
then W3."
;;;###autoload
(defun browse-url-xdg-open (url &optional new-window)
(interactive (browse-url-interactive-arg "URL: "))
- (call-process "nohup" nil nil nil "xdg-open" url))
+ (call-process "xdg-open" nil 0 nil url))
;;;###autoload
(defun browse-url-netscape (url &optional new-window)
--8<---------------cut here---------------end--------------->8---
- bug#8917: browse-url-xdg-open can fail to return,
Lawrence Mitchell <=