mirror of
https://github.com/fergalmoran/picard.git
synced 2026-02-21 07:04:02 +00:00
Merge pull request #1189 from zas/script2filename_refactor
Ensure script_to_filename() doesn't modify passed metadata
This commit is contained in:
@@ -21,6 +21,7 @@
|
||||
|
||||
from picard import config
|
||||
from picard.const.sys import IS_WIN
|
||||
from picard.metadata import Metadata
|
||||
from picard.script import ScriptParser
|
||||
from picard.util import (
|
||||
replace_win32_incompat,
|
||||
@@ -33,11 +34,11 @@ def script_to_filename(naming_format, metadata, file=None, settings=None):
|
||||
if settings is None:
|
||||
settings = config.setting
|
||||
# make sure every metadata can safely be used in a path name
|
||||
meta = Metadata()
|
||||
for name in metadata:
|
||||
values = [sanitize_filename(str(v)) for v in metadata.getall(name)]
|
||||
metadata.set(name, values)
|
||||
meta[name] = [sanitize_filename(str(v)) for v in metadata.getall(name)]
|
||||
naming_format = naming_format.replace("\t", "").replace("\n", "")
|
||||
filename = ScriptParser().eval(naming_format, metadata, file)
|
||||
filename = ScriptParser().eval(naming_format, meta, file)
|
||||
if settings["ascii_filenames"]:
|
||||
filename = replace_non_ascii(filename, pathsave=True)
|
||||
# replace incompatible characters
|
||||
|
||||
Reference in New Issue
Block a user