From 140792bd514ee4ba739fda899785bea3ce746f05 Mon Sep 17 00:00:00 2001 From: Nick Coghlan Date: Sat, 25 Feb 2017 18:40:07 +1000 Subject: [PATCH] bpo-29644: suppress subprocess output from webbrowser (#289) When checking for the default X web browser, xdg-settings may emit messages on stderr if some components (such as kreadconfig5) are unavailable. These messages aren't of interest to Python, so we just ignore them. --- Lib/webbrowser.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Lib/webbrowser.py b/Lib/webbrowser.py index a9eac696505..fb6c83b19be 100755 --- a/Lib/webbrowser.py +++ b/Lib/webbrowser.py @@ -491,7 +491,8 @@ def register_X_browsers(): if os.environ.get("DISPLAY"): try: cmd = "xdg-settings get default-web-browser".split() - result = subprocess.check_output(cmd).decode().strip() + raw_result = subprocess.check_output(cmd, stderr=subprocess.DEVNULL) + result = raw_result.decode().strip() except (FileNotFoundError, subprocess.CalledProcessError): pass else: