diff --git a/.changeset/wicked-zebras-begin.md b/.changeset/wicked-zebras-begin.md new file mode 100644 index 00000000000..2484e449cc7 --- /dev/null +++ b/.changeset/wicked-zebras-begin.md @@ -0,0 +1,5 @@ +--- +"electron-updater": patch +--- + +Fixed missing lowercase in extension comparison. diff --git a/packages/electron-updater/src/AppUpdater.ts b/packages/electron-updater/src/AppUpdater.ts index 3e7ff8a9e0b..c0ea270c810 100644 --- a/packages/electron-updater/src/AppUpdater.ts +++ b/packages/electron-updater/src/AppUpdater.ts @@ -698,7 +698,7 @@ export abstract class AppUpdater extends (EventEmitter as new () => TypedEmitter function getCacheUpdateFileName(): string { // NodeJS URL doesn't decode automatically const urlPath = decodeURIComponent(taskOptions.fileInfo.url.pathname) - if (urlPath.endsWith(`.${taskOptions.fileExtension}`)) { + if (urlPath.toLowerCase().endsWith(`.${taskOptions.fileExtension.toLowerCase()}`)) { return path.basename(urlPath) } else { // url like /latest, generate name diff --git a/packages/electron-updater/src/providers/Provider.ts b/packages/electron-updater/src/providers/Provider.ts index 218f04548fc..dd723da6495 100644 --- a/packages/electron-updater/src/providers/Provider.ts +++ b/packages/electron-updater/src/providers/Provider.ts @@ -85,13 +85,13 @@ export function findFile(files: Array, extension: string throw newError("No files provided", "ERR_UPDATER_NO_FILES_PROVIDED") } - const result = files.find(it => it.url.pathname.toLowerCase().endsWith(`.${extension}`)) + const result = files.find(it => it.url.pathname.toLowerCase().endsWith(`.${extension.toLowerCase()}`)) if (result != null) { return result } else if (not == null) { return files[0] } else { - return files.find(fileInfo => !not.some(ext => fileInfo.url.pathname.toLowerCase().endsWith(`.${ext}`))) + return files.find(fileInfo => !not.some(ext => fileInfo.url.pathname.toLowerCase().endsWith(`.${ext.toLowerCase()}`))) } }