X-Git-Url: https://git.mdrn.pl/redakcja.git/blobdiff_plain/ec6680ed1179840f341ae507ba78320cd23a838e..1f2c6cf623a7d52c28e9dcbf5462d30c9e617bb8:/apps/fileupload/views.py?ds=inline diff --git a/apps/fileupload/views.py b/apps/fileupload/views.py index cb7873b6..25112e6b 100644 --- a/apps/fileupload/views.py +++ b/apps/fileupload/views.py @@ -4,6 +4,7 @@ from urllib import quote from django.conf import settings from django.http import HttpResponse, HttpResponseRedirect, HttpResponseForbidden, Http404 from django.utils.decorators import method_decorator +from django.utils.encoding import smart_bytes from django.views.decorators.vary import vary_on_headers from django.views.generic import FormView, View from .forms import UploadForm @@ -41,7 +42,7 @@ class UploadView(FormView): def get_directory(self): """Directory relative to MEDIA_ROOT. Must end with a slash.""" - return self.kwargs['path'].encode('utf-8') + return self.kwargs['path'] def breadcrumbs(self): """List of tuples (name, url) or just (name,) for breadcrumbs. @@ -74,9 +75,10 @@ class UploadView(FormView): Makes sure it's inside MEDIA_ROOT. """ + filename = smart_bytes(filename) path = os.path.abspath(os.path.join( settings.MEDIA_ROOT, - self.get_directory(), + smart_bytes(self.get_directory()), filename)) if not path.startswith(settings.MEDIA_ROOT): raise Http404