summaryrefslogtreecommitdiff
path: root/packages/backend/src
diff options
context:
space:
mode:
authortamaina <tamaina@hotmail.co.jp>2023-04-15 11:18:47 +0000
committertamaina <tamaina@hotmail.co.jp>2023-04-15 11:19:00 +0000
commit38fdc73d0142c2ca2e141c15a05ff1694f7768d2 (patch)
tree1c4df80beddc19185895cefeeb97c756c19a862d /packages/backend/src
parentfeat(client): データセーバーモードの追加 (#10478) (diff)
downloadsharkey-38fdc73d0142c2ca2e141c15a05ff1694f7768d2.tar.gz
sharkey-38fdc73d0142c2ca2e141c15a05ff1694f7768d2.tar.bz2
sharkey-38fdc73d0142c2ca2e141c15a05ff1694f7768d2.zip
Fix?(server): Content-Dispositionのパースでエラーが発生した場合にもダウンロードが完了するように
#10626
Diffstat (limited to 'packages/backend/src')
-rw-r--r--packages/backend/src/core/DownloadService.ts10
1 files changed, 7 insertions, 3 deletions
diff --git a/packages/backend/src/core/DownloadService.ts b/packages/backend/src/core/DownloadService.ts
index bd999c67da..bd535c6032 100644
--- a/packages/backend/src/core/DownloadService.ts
+++ b/packages/backend/src/core/DownloadService.ts
@@ -86,9 +86,13 @@ export class DownloadService {
const contentDisposition = res.headers['content-disposition'];
if (contentDisposition != null) {
- const parsed = parse(contentDisposition);
- if (parsed.parameters.filename) {
- filename = parsed.parameters.filename;
+ try {
+ const parsed = parse(contentDisposition);
+ if (parsed.parameters.filename) {
+ filename = parsed.parameters.filename;
+ }
+ } catch (e) {
+ this.logger.warn(`Failed to parse content-disposition: ${contentDisposition}`, { stack: e });
}
}
}).on('downloadProgress', (progress: Got.Progress) => {