Two minor changes for better Jython compatibility. Finn Bock says:

Change 1: Not all 'modules' in sys.modules have a
    sensible __file__ attribute. Some of our java package
    can have the __file__ attribute set to None.

    Change 2: In jython we have the jython license file in
    <root> and the CPython license file in <root>/Lib. By
    reversing the search sequence jython will find and
    show the jython license file before the CPython file.

Closes SF patch #405853.
This commit is contained in:
Barry Warsaw 2001-03-23 17:53:49 +00:00
parent 27dca06f0c
commit 62d248892f

View File

@ -14,7 +14,7 @@ This will append site-specific paths to to the module search path. On
Unix, it starts with sys.prefix and sys.exec_prefix (if different) and Unix, it starts with sys.prefix and sys.exec_prefix (if different) and
appends lib/python<version>/site-packages as well as lib/site-python. appends lib/python<version>/site-packages as well as lib/site-python.
On other platforms (mainly Mac and Windows), it uses just sys.prefix On other platforms (mainly Mac and Windows), it uses just sys.prefix
(and sys.exec_prefix, if different, but this is unlikely). The \(and sys.exec_prefix, if different, but this is unlikely). The
resulting directories, if they exist, are appended to sys.path, and resulting directories, if they exist, are appended to sys.path, and
also inspected for path configuration files. also inspected for path configuration files.
@ -71,7 +71,7 @@ def makepath(*paths):
L = sys.modules.values() L = sys.modules.values()
for m in L: for m in L:
if hasattr(m, "__file__"): if hasattr(m, "__file__") and m.__file__:
m.__file__ = makepath(m.__file__) m.__file__ = makepath(m.__file__)
del m, L del m, L
@ -233,7 +233,7 @@ here = os.path.dirname(os.__file__)
__builtin__.license = _Printer( __builtin__.license = _Printer(
"license", "See http://www.pythonlabs.com/products/python2.0/license.html", "license", "See http://www.pythonlabs.com/products/python2.0/license.html",
["LICENSE.txt", "LICENSE"], ["LICENSE.txt", "LICENSE"],
[here, os.path.join(here, os.pardir), os.curdir]) [os.path.join(here, os.pardir), here, os.curdir])
# Set the string encoding used by the Unicode implementation. The # Set the string encoding used by the Unicode implementation. The