Fix updater being corrupted by multiple attempts to download

This commit is contained in:
TrainDoctor
2022-08-23 15:23:23 -07:00
parent 8b3f569a09
commit de1c89af21
4 changed files with 22 additions and 6 deletions
@@ -9,6 +9,8 @@ export default function UpdaterSettings() {
const [updateProgress, setUpdateProgress] = useState<number>(-1);
const [reloading, setReloading] = useState<boolean>(false);
const [checkingForUpdates, setCheckingForUpdates] = useState<boolean>(false);
const [loaderUpdating, setLoaderUpdating] = useState<boolean>(false);
useEffect(() => {
(async () => {
const res = (await callUpdaterMethod('get_version')) as { result: VerInfo };
@@ -36,7 +38,7 @@ export default function UpdaterSettings() {
>
{updateProgress == -1 ? (
<DialogButton
disabled={!versionInfo?.updatable || checkingForUpdates}
disabled={!versionInfo?.updatable || checkingForUpdates || loaderUpdating}
onClick={
!versionInfo?.remote || versionInfo?.remote?.tag_name == versionInfo?.current
? async () => {
@@ -49,10 +51,12 @@ export default function UpdaterSettings() {
window.DeckyUpdater = {
updateProgress: (i) => {
setUpdateProgress(i);
setLoaderUpdating(true);
},
finish: async () => {
setUpdateProgress(0);
setReloading(true);
setLoaderUpdating(false);
await finishUpdate();
},
};