diff --git a/django/utils/_os.py b/django/utils/_os.py index 2c7b88e2c3..ad4efb3264 100644 --- a/django/utils/_os.py +++ b/django/utils/_os.py @@ -3,11 +3,18 @@ import stat from os.path import join, normcase, normpath, abspath, isabs, sep from django.utils.encoding import force_unicode -# Define our own abspath function that can handle joining +try: + WindowsError = WindowsError +except NameError: + class WindowsError(Exception): + pass + + +# Define our own abspath function that can handle joining # unicode paths to a current working directory that has non-ASCII -# characters in it. This isn't necessary on Windows since the +# characters in it. This isn't necessary on Windows since the # Windows version of abspath handles this correctly. The Windows -# abspath also handles drive letters differently than the pure +# abspath also handles drive letters differently than the pure # Python implementation, so it's best not to replace it. if os.name == 'nt': abspathu = abspath @@ -45,6 +52,7 @@ def safe_join(base, *paths): 'path component (%s)' % (final_path, base_path)) return final_path + def rmtree_errorhandler(func, path, exc_info): """ On Windows, some files are read-only (e.g. in in .svn dirs), so when