From: Georg Brandl Date: Sun, 24 Sep 2006 10:36:08 +0000 (+0000) Subject: Fix webbrowser.BackgroundBrowser on Windows. X-Git-Tag: v2.5.1c1~376 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=1f2157896524c174f39143bc8e4c8dbf22027a24;p=python Fix webbrowser.BackgroundBrowser on Windows. (backport from rev. 51991) --- diff --git a/Lib/webbrowser.py b/Lib/webbrowser.py index 7a1a3b4994..7b0f7367db 100644 --- a/Lib/webbrowser.py +++ b/Lib/webbrowser.py @@ -165,7 +165,10 @@ class GenericBrowser(BaseBrowser): cmdline = [self.name] + [arg.replace("%s", url) for arg in self.args] try: - p = subprocess.Popen(cmdline, close_fds=True) + if sys.platform[:3] == 'win': + p = subprocess.Popen(cmdline) + else: + p = subprocess.Popen(cmdline, close_fds=True) return not p.wait() except OSError: return False @@ -178,11 +181,14 @@ class BackgroundBrowser(GenericBrowser): def open(self, url, new=0, autoraise=1): cmdline = [self.name] + [arg.replace("%s", url) for arg in self.args] - setsid = getattr(os, 'setsid', None) - if not setsid: - setsid = getattr(os, 'setpgrp', None) try: - p = subprocess.Popen(cmdline, close_fds=True, preexec_fn=setsid) + if sys.platform[:3] == 'win': + p = subprocess.Popen(cmdline) + else: + setsid = getattr(os, 'setsid', None) + if not setsid: + setsid = getattr(os, 'setpgrp', None) + p = subprocess.Popen(cmdline, close_fds=True, preexec_fn=setsid) return (p.poll() is None) except OSError: return False diff --git a/Misc/NEWS b/Misc/NEWS index 5a539db327..b6087a906f 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -14,12 +14,21 @@ Core and builtins - Allow exception instances to be directly sliced again. + Extension Modules ----------------- - Fix itertools.count(n) to work with negative numbers again. +Library +------- + +- Make webbrowser.BackgroundBrowser usable in Windows (it wasn't because + the close_fds arg to subprocess.Popen is not supported). + + + What's New in Python 2.5 (final) ================================ @@ -27,6 +36,7 @@ What's New in Python 2.5 (final) No changes since release candidate 2. + What's New in Python 2.5 release candidate 2? =============================================