diff options
author | Jon Bergli Heier <snakebite@jvnv.net> | 2017-02-11 14:19:55 +0100 |
---|---|---|
committer | Jon Bergli Heier <snakebite@jvnv.net> | 2017-02-11 14:19:55 +0100 |
commit | af750a6598d53b8a5cb58092dd5b523ea7e967ca (patch) | |
tree | 3db935d25763c8bcca87fecf59ed94a43990ba98 | |
parent | 57fa40103fb866200a254efb9754b4d5d54cd7f9 (diff) |
Fixed uploading small files.
For small files the file attribute is a StringIO object instead of a
NamedTemporaryFile. For cStringIO we're not allowed to set the delete
attribute, so check wether the object already has a delete attribute
before attempting to set it.
-rwxr-xr-x | fbin.py | 6 |
1 files changed, 4 insertions, 2 deletions
@@ -236,13 +236,15 @@ class Application(object): return self.redirect(environ, start_response, 'l') if not user and not settings.allow_anonymous_uploads: - form['file'].file.delete = True + if hasattr(form['file'].file, 'delete'): + form['file'].file.delete = True start_response('403 Forbidden', [('Content-Type', 'text/plain')]) return ['Anonymous uploads are disabled by the administrator.'] filename = form.getvalue('filename') temp = form['file'].file - temp.delete = False + if hasattr(temp, 'delete'): + temp.delete = False # If the name attribute is missing, assume this is a StringIO object, then create a new temporary file and copy the contents. if not hasattr(temp, 'name'): |