fix: when updater failed

This commit is contained in:
GyDi 2022-03-04 02:10:27 +08:00
parent 18f9d6dec5
commit 650e017b72
No known key found for this signature in database
GPG Key ID: 1C95E0D3467B3084

View File

@ -1,7 +1,5 @@
import useSWR from "swr";
import { useState } from "react";
import { checkUpdate, installUpdate } from "@tauri-apps/api/updater";
import { relaunch } from "@tauri-apps/api/process";
import {
Button,
Dialog,
@ -10,7 +8,10 @@ import {
DialogContentText,
DialogTitle,
} from "@mui/material";
import { killSidecars } from "../../services/cmds";
import { relaunch } from "@tauri-apps/api/process";
import { checkUpdate, installUpdate } from "@tauri-apps/api/updater";
import { killSidecars, restartSidecar } from "../../services/cmds";
import Notice from "../base/base-notice";
interface Props {
open: boolean;
@ -29,18 +30,19 @@ const UpdateDialog = (props: Props) => {
const [uploading, setUploading] = useState(uploadingState);
const onUpdate = async () => {
try {
setUploading(true);
uploadingState = true;
try {
await killSidecars();
await installUpdate();
await relaunch();
} catch (error) {
console.log(error);
window.alert("Failed to upload, please try again.");
} catch (err: any) {
await restartSidecar();
Notice.error(err?.message || err.toString());
} finally {
setUploading(true);
uploadingState = true;
setUploading(false);
uploadingState = false;
}
};