From 0487ceb7b38d92bfbcbd2612316df9fe142dd5de Mon Sep 17 00:00:00 2001 From: Montassar Ghanmy Date: Fri, 26 Apr 2024 10:21:47 +0100 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20Fix=20files=20downloaded=20as=20?= =?UTF-8?q?untitled=20(#495)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../node/src/services/documents/web/controllers/documents.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tdrive/backend/node/src/services/documents/web/controllers/documents.ts b/tdrive/backend/node/src/services/documents/web/controllers/documents.ts index 917a7c80..2a6214b9 100644 --- a/tdrive/backend/node/src/services/documents/web/controllers/documents.ts +++ b/tdrive/backend/node/src/services/documents/web/controllers/documents.ts @@ -263,7 +263,7 @@ export class DocumentsController { }>, ): Promise => { const { id } = request.params; - const update = request.body; + const update: any = request.body; if (!id) throw new CrudException("Missing id", 400); @@ -384,7 +384,7 @@ export class DocumentsController { archive.pipe(response.raw); } else if (archiveOrFile.file) { const data = archiveOrFile.file; - const filename = data.name.replace(/[^a-zA-Z0-9 -_.]/g, ""); + const filename = encodeURIComponent(data.name.replace(/[^\p{L}0-9 _.-]/gu, "")); response.header("Content-disposition", `attachment; filename="${filename}"`); if (data.size) response.header("Content-Length", data.size);