Unquote path names in --log-filenames mode

This commit is contained in:
Miguel Jacq 2025-02-09 10:38:07 +11:00
parent 6e05ee4426
commit 31e7664e53
No known key found for this signature in database
GPG key ID: 59B3F0C24135C6A9
2 changed files with 10 additions and 4 deletions

View file

@ -25,7 +25,7 @@ import mimetypes
import gzip import gzip
from flask import Response, request from flask import Response, request
from unidecode import unidecode from unidecode import unidecode
from urllib.parse import quote from urllib.parse import quote, unquote
class SendBaseModeWeb: class SendBaseModeWeb:
@ -246,7 +246,10 @@ class SendBaseModeWeb:
or self.common.platform == "BSD" or self.common.platform == "BSD"
): ):
if self.web.settings.get(self.web.mode, "log_filenames"): if self.web.settings.get(self.web.mode, "log_filenames"):
filename_str = f"{path} - " # Decode and sanitize the path to remove newlines
decoded_path = unquote(path)
decoded_path = decoded_path.replace("\r", "").replace("\n", "")
filename_str = f"{decoded_path} - "
else: else:
filename_str = "" filename_str = ""

View file

@ -29,7 +29,7 @@ from datetime import datetime, timezone
from flask import Response, request, render_template, make_response, abort from flask import Response, request, render_template, make_response, abort
from unidecode import unidecode from unidecode import unidecode
from werkzeug.http import parse_date, http_date from werkzeug.http import parse_date, http_date
from urllib.parse import quote from urllib.parse import quote, unquote
from .send_base_mode import SendBaseModeWeb from .send_base_mode import SendBaseModeWeb
@ -347,7 +347,10 @@ class ShareModeWeb(SendBaseModeWeb):
or self.common.platform == "BSD" or self.common.platform == "BSD"
): ):
if self.web.settings.get("share", "log_filenames"): if self.web.settings.get("share", "log_filenames"):
filename_str = f"{path} - " # Decode and sanitize the path to remove newlines
decoded_path = unquote(path)
decoded_path = decoded_path.replace("\r", "").replace("\n", "")
filename_str = f"{decoded_path} - "
else: else:
filename_str = "" filename_str = ""