Fixed #11030: fixed file uploads on non-utf8 filesystem encoding. Thanks, Honza Kral.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@10693 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
fb9ac5729d
commit
a59095af24
|
@ -6,7 +6,7 @@ from django.conf import settings
|
|||
from django.core.exceptions import ImproperlyConfigured, SuspiciousOperation
|
||||
from django.core.files import locks, File
|
||||
from django.core.files.move import file_move_safe
|
||||
from django.utils.encoding import force_unicode
|
||||
from django.utils.encoding import force_unicode, smart_str
|
||||
from django.utils.functional import LazyObject
|
||||
from django.utils.importlib import import_module
|
||||
from django.utils.text import get_valid_filename
|
||||
|
@ -212,7 +212,7 @@ class FileSystemStorage(Storage):
|
|||
path = safe_join(self.location, name)
|
||||
except ValueError:
|
||||
raise SuspiciousOperation("Attempted access to '%s' denied." % name)
|
||||
return os.path.normpath(path)
|
||||
return smart_str(os.path.normpath(path))
|
||||
|
||||
def size(self, name):
|
||||
return os.path.getsize(self.path(name))
|
||||
|
|
|
@ -70,13 +70,13 @@ ValueError: The 'normal' attribute has no file associated with it.
|
|||
[]
|
||||
>>> files.sort()
|
||||
>>> files
|
||||
[u'default.txt', u'django_test.txt']
|
||||
['default.txt', 'django_test.txt']
|
||||
|
||||
>>> obj1.save()
|
||||
>>> dirs, files = temp_storage.listdir('tests')
|
||||
>>> files.sort()
|
||||
>>> files
|
||||
[u'assignment.txt', u'default.txt', u'django_test.txt']
|
||||
['assignment.txt', 'default.txt', 'django_test.txt']
|
||||
|
||||
# Files can be read in a little at a time, if necessary.
|
||||
|
||||
|
|
Loading…
Reference in New Issue