Fix download.bin filename flickering during unrestrict
Some checks are pending
Build and Release / build (push) Waiting to run

Keep existing good filename when debrid API returns "download.bin"
or opaque name. Only overwrite item.fileName if the resolved name
is actually better (not opaque, not download.bin).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Sucukdeluxe 2026-03-02 10:43:29 +01:00
parent 13ff41aa95
commit ca05fa184d
2 changed files with 9 additions and 2 deletions

View File

@ -1,6 +1,6 @@
{
"name": "real-debrid-downloader",
"version": "1.4.78",
"version": "1.4.79",
"description": "Real-Debrid Downloader Desktop (Electron + React + TypeScript)",
"main": "build/main/main/main.js",
"author": "Sucukdeluxe",

View File

@ -3346,7 +3346,14 @@ export class DownloadManager extends EventEmitter {
}
item.provider = unrestricted.provider;
item.retries += unrestricted.retriesUsed;
item.fileName = sanitizeFilename(unrestricted.fileName || filenameFromUrl(item.url));
const resolvedName = sanitizeFilename(unrestricted.fileName || filenameFromUrl(item.url));
// Only overwrite fileName if the resolved name is better (not "download.bin" / opaque)
if (resolvedName && !looksLikeOpaqueFilename(resolvedName) && resolvedName.toLowerCase() !== "download.bin") {
item.fileName = resolvedName;
} else if (looksLikeOpaqueFilename(item.fileName)) {
// Current name is also opaque, use whatever we got
item.fileName = resolvedName;
}
try {
fs.mkdirSync(pkg.outputDir, { recursive: true });
} catch (mkdirError) {