Commit 3446b346 authored by Mickaël Desfrênes's avatar Mickaël Desfrênes
Browse files

do not use so-called _secure_filename

parent 85bc4ff8
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -198,6 +198,9 @@ def upload_partial(request: HttpRequest) -> HttpResponse:
        if re.match("[A-Fa-f0-9]{64}", file_hash) is None:
            raise ValueError
        file_name = base64.b64decode(request.headers["X-file-name"]).decode("utf-8")
        _, f_extension = os.path.splitext(file_name)
        if not f_extension:
            return HttpResponse("Type de fichier inconnu", status=400)
        chunk_number, total_chunks = request.headers["X-file-chunk"].split("/")
        file_instance = models.File.objects.get(hash=file_hash, project=project)
        # Rise from your grave !
@@ -239,7 +242,7 @@ def upload_partial(request: HttpRequest) -> HttpResponse:
        total_chunks
    ):
        Path(lock_file_path).touch()  # lock dir
        f_name = "{}/upload_{}".format(partials_dir, _secure_filename(file_name))
        f_name = "{}/complete{}".format(partials_dir, f_extension)
        _join_parts(partials_dir, f_name, file_hash, total_chunks)
        with open(f_name, "rb") as f:
            try: