[1.2.X] Fixed #12955 -- Use the size attribute of the file instead of len() to support uploads larger than 2GB. Thanks, swiedenroth and isagalaev.

Backport from trunk (r14878).

git-svn-id: http://code.djangoproject.com/svn/django/branches/releases/1.2.X@14903 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
Jannis Leidel 2010-12-13 13:56:02 +00:00
parent 38d848a3fe
commit d6cf84b032

View File

@ -73,7 +73,7 @@ class FieldFile(File):
def _get_size(self):
self._require_file()
if not self._committed:
return len(self.file)
return self.file.size
return self.storage.size(self.name)
size = property(_get_size)
@ -93,7 +93,7 @@ class FieldFile(File):
setattr(self.instance, self.field.name, self.name)
# Update the filesize cache
self._size = len(content)
self._size = content.size
self._committed = True
# Save the object because it has changed, unless save is False