If the user's environment has set the BROWSER environment variable (as Gnome

seems to do), the user may not be aware of its contents.  Attempt to add any
to _browsers.

closes bug #429136
This commit is contained in:
Skip Montanaro 2001-07-18 20:03:32 +00:00
parent 6c29926587
commit cdab3bf7eb

View file

@ -306,11 +306,14 @@ def open_new(self, url): # Deprecated. May be removed in 2.1.
# It's the user's responsibility to register handlers for any unknown
# browser referenced by this value, before calling open().
_tryorder = os.environ["BROWSER"].split(":")
else:
# Optimization: filter out alternatives that aren't available, so we can
# avoid has_key() tests at runtime. (This may also allow some unused
# classes and class-instance storage to be garbage-collected.)
_tryorder = filter(lambda x: _browsers.has_key(x.lower())
or x.find("%s") > -1, _tryorder)
for cmd in _tryorder:
if not _browsers.has_key(cmd.lower()):
if _iscommand(cmd.lower()):
register(cmd.lower(), None, GenericBrowser("%s %%s" % cmd.lower()))
_tryorder = filter(lambda x: _browsers.has_key(x.lower())
or x.find("%s") > -1, _tryorder)
# what to do if _tryorder is now empty?
# end