From c64d577cb053b6fee8e84f768419e84c3c9df2cc Mon Sep 17 00:00:00 2001 From: dec05eba Date: Thu, 9 Sep 2021 11:54:24 +0200 Subject: Fix peertube video download --- src/DownloadUtils.cpp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'src/DownloadUtils.cpp') diff --git a/src/DownloadUtils.cpp b/src/DownloadUtils.cpp index a56a56e..93df291 100644 --- a/src/DownloadUtils.cpp +++ b/src/DownloadUtils.cpp @@ -136,18 +136,18 @@ namespace QuickMedia { fprintf(stderr, "Download duration for %s: %d ms\n", url.c_str(), timer.getElapsedTime().asMilliseconds()); std::string content_disposition = header_extract_value(header, "content-disposition"); - size_t filename_start = content_disposition.find("filename="); + // TODO: after filename*= the encoding type will follow. We need to support other formats than utf-8 as well + size_t filename_start = content_disposition.find("filename*="); if(filename_start == std::string::npos) { - // TODO: after filename*= the encoding type will follow. We need to support other formats than utf-8 as well - filename_start = content_disposition.find("filename*="); + filename_start = content_disposition.find("filename="); if(filename_start != std::string::npos) { - filename_start += 10; - filename_start = content_disposition.find("''", filename_start); - if(filename_start != std::string::npos) - filename_start += 2; + filename_start += 9; } } else { - filename_start += 9; + filename_start += 10; + filename_start = content_disposition.find("''", filename_start); + if(filename_start != std::string::npos) + filename_start += 2; } if(filename_start == std::string::npos) { -- cgit v1.2.3