|
|
@@ -828,7 +828,7 @@ this.SingleFileCore = this.SingleFileCore || (() => {
|
|
|
filename = await DomUtil.evalTemplateVariable(filename, "digest-sha-384", async () => DOM.digest("SHA-384", content));
|
|
|
filename = await DomUtil.evalTemplateVariable(filename, "digest-sha-512", async () => DOM.digest("SHA-512", content));
|
|
|
filename = filename.replace(/[~\\?%*:|"<>\x00-\x1f\x7F]+/g, "_"); // eslint-disable-line no-control-regex
|
|
|
- filename = filename.replace(/\.\.\//g, "").replace(/^\/+/, "");
|
|
|
+ filename = filename.replace(/\.\.\//g, "").replace(/^\/+/, "").replace(/\/+/g, "/").replace(/\/$/, "");
|
|
|
if (filename.length > 192) {
|
|
|
const extensionMatch = filename.match(/(\.[^.]{3,4})$/);
|
|
|
const extension = extensionMatch && extensionMatch[0] && extensionMatch[0].length > 1 ? extensionMatch[0] : "";
|