mirror of
https://github.com/mifi/lossless-cut.git
synced 2024-11-21 18:02:35 +01:00
try to escape last ffmpeg command on windows
also escape quote on linux closes #2151
This commit is contained in:
parent
93f47b9c35
commit
b6645fa445
@ -24,8 +24,16 @@ export function setCustomFfPath(path: string | undefined) {
|
||||
customFfPath = path;
|
||||
}
|
||||
|
||||
function escapeCliArg(arg: string) {
|
||||
if (isWindows) {
|
||||
// https://github.com/mifi/lossless-cut/issues/2151
|
||||
return /[\s"&<>^|]/.test(arg) ? `"${arg.replaceAll('"', '""')}"` : arg;
|
||||
}
|
||||
return /[^\w-]/.test(arg) ? `'${arg.replaceAll("'", '\'"\'"\'')}'` : arg;
|
||||
}
|
||||
|
||||
export function getFfCommandLine(cmd: string, args: readonly string[]) {
|
||||
return `${cmd} ${args.map((arg) => (/[^\w-]/.test(arg) ? `'${arg}'` : arg)).join(' ')}`;
|
||||
return `${cmd} ${args.map((arg) => escapeCliArg(arg)).join(' ')}`;
|
||||
}
|
||||
|
||||
function getFfPath(cmd: string) {
|
||||
|
Loading…
Reference in New Issue
Block a user