Issue #4537: webbrowser.UnixBrowser failed because this module defines an open()
function which shadows the builtin.

Will backport to 3.0
diff --git a/Lib/webbrowser.py b/Lib/webbrowser.py
index 4772adc..18dc11b 100644
--- a/Lib/webbrowser.py
+++ b/Lib/webbrowser.py
@@ -223,7 +223,7 @@
         cmdline = [self.name] + raise_opt + args
 
         if remote or self.background:
-            inout = open(os.devnull, "r+")
+            inout = io.open(os.devnull, "r+")
         else:
             # for TTY browsers, we need stdin/out
             inout = None
diff --git a/Misc/NEWS b/Misc/NEWS
index d4e749f..15e3401 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -16,6 +16,9 @@
 Library
 -------
 
+- Issue #4537: webbrowser.UnixBrowser would fail to open the browser because
+  it was calling the wrong open() function.
+
 - Issue #1055234: cgi.parse_header(): Fixed parsing of header parameters to
   support unusual filenames (such as those containing semi-colons) in
   Content-Disposition headers.