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'): | 
