Fix some errors that #7566 introduced on non-Windows platforms due to

an ImportError. Rearranged the import, faked out the implementation when
the import fails, and reorganized a test that depends on Win32 behavior.
This commit is contained in:
Brian Curtin 2010-09-06 19:46:17 +00:00
parent 4bc12ef47d
commit 13a0db5ddb
2 changed files with 14 additions and 7 deletions

View file

@ -10,7 +10,6 @@ import sys
import stat
import genericpath
from genericpath import *
from nt import _getfileinformation
__all__ = ["normcase","isabs","join","splitdrive","split","splitext",
"basename","dirname","commonprefix","getsize","getmtime",
@ -656,4 +655,10 @@ def samefile(f1, f2):
def sameopenfile(f1, f2):
"""Test whether two file objects reference the same file"""
return _getfileinformation(f1) == _getfileinformation(f2)
try:
from nt import _getfileinformation
return _getfileinformation(f1) == _getfileinformation(f2)
except ImportError:
# On other operating systems, return True if the file descriptors
# are the same.
return f1 == f2