Fix Update button being stuck on Electron with auto-updates turned off (#4154)

This commit is contained in:
Alexander Zinchuk 2024-01-12 13:00:18 +01:00
parent 35ae18dddc
commit 8248de44a6
2 changed files with 11 additions and 3 deletions

View File

@ -83,7 +83,7 @@ function shouldPerformAutoUpdate(): Promise<boolean> {
let contents = '';
response.on('end', () => {
resolve(getIsAppUpdateNeeded(contents, app.getVersion()));
resolve(getIsAppUpdateNeeded(contents, app.getVersion(), true));
});
response.on('data', (data: Buffer) => {

View File

@ -1,7 +1,15 @@
const APP_VERSION_REGEX = /^\d+\.\d+(\.\d+)?$/;
export default function getIsAppUpdateNeeded(remoteVersion: string, appVersion: string) {
export default function getIsAppUpdateNeeded(remoteVersion: string, appVersion: string, isStrict?: boolean) {
const sanitizedRemoteVersion = remoteVersion.trim();
return APP_VERSION_REGEX.test(sanitizedRemoteVersion) && sanitizedRemoteVersion !== appVersion;
if (!APP_VERSION_REGEX.test(sanitizedRemoteVersion)) {
return false;
}
if (isStrict) {
return sanitizedRemoteVersion.localeCompare(appVersion, undefined, { numeric: true, sensitivity: 'base' }) === 1;
}
return sanitizedRemoteVersion !== appVersion;
}