Skip to content

Commit 3ab82d3

Browse files
authored
Merge pull request #28 from ZeroKnowledgeNetwork/fix/console-log
fix: cross-platform handling of client stop vs fail
2 parents 20651b1 + a6f5358 commit 3ab82d3

File tree

5 files changed

+20
-26
lines changed

5 files changed

+20
-26
lines changed

package-lock.json

Lines changed: 8 additions & 8 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,9 @@
3131
"@types/react": "^18.3.1",
3232
"@types/react-dom": "^18.3.1",
3333
"@vitejs/plugin-react": "^4.3.4",
34-
"daisyui": "^5.0.17",
34+
"daisyui": "^5.0.18",
3535
"tailwindcss": "^4.1.3",
3636
"typescript": "^5.8.3",
37-
"vite": "^6.2.5"
37+
"vite": "^6.2.6"
3838
}
3939
}

src-tauri/Cargo.lock

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/components/Footer.tsx

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,17 @@
1-
import { useState } from "react";
21
import { useStore } from "../store";
32
import { IconCommandLine } from ".";
43

54
export function Footer() {
6-
const [collapsed, setCollapsed] = useState(true as boolean);
7-
85
const appVersion = useStore((s) => s.appVersion);
96
const platformArch = useStore((s) => s.platformArch);
107
const consoleLines = useStore((s) => s.consoleLines);
118

129
return (
1310
<footer
1411
tabIndex={0}
15-
className="collapse-arrow collapse bg-base-200 text-base-content/30 border-t border-base-300 rounded-none"
12+
className="collapse collapse-arrow bg-base-200 text-base-content/30 border-t border-base-300 rounded-none"
1613
>
17-
<input
18-
type="checkbox"
19-
checked={!collapsed}
20-
onChange={() => setCollapsed(!collapsed)}
21-
/>
14+
<input type="checkbox" />
2215
<div className="collapse-title flex w-full items-center">
2316
<IconCommandLine />
2417
<div className="mx-auto flex gap-x-4 text-sm">

src/pages/Networks.tsx

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { useState } from "react";
1+
import { useRef, useState } from "react";
22
import * as log from "@tauri-apps/plugin-log";
33
import * as path from "@tauri-apps/api/path";
44
import { exists, mkdir } from "@tauri-apps/plugin-fs";
@@ -14,6 +14,7 @@ import {
1414
} from "../utils";
1515

1616
export function Networks() {
17+
const isStoppingRef = useRef(false);
1718
const [dlProgress, setDlProgress] = useState(0);
1819
const [networkId, setNetworkId] = useState("");
1920

@@ -52,9 +53,9 @@ export function Networks() {
5253

5354
async function disconnect() {
5455
try {
56+
isStoppingRef.current = true;
5557
await clientStop();
5658
setMessage("info", "Disconnected from Network");
57-
consoleAddLine(`Disconnected from network: ${networkId}`);
5859
} catch (error: any) {
5960
log.error(`${error}`);
6061
setMessage("error", `${error}`);
@@ -161,13 +162,13 @@ export function Networks() {
161162
log.debug(`spawning command: ${cmd} ${args.join(" ")}`);
162163

163164
command.on("close", (data) => {
164-
// normal: code=null signal=9
165-
// error: code=2 signal=null
166165
log.debug(`closed: ${cmd} code=${data.code} signal=${data.signal}`);
167-
if (data.code !== null) {
166+
if (!isStoppingRef.current) {
168167
setMessage("error", "Error: Network connection failed.");
169168
consoleAddLine(`Network connection failed: ${networkId}`);
170169
}
170+
isStoppingRef.current = false;
171+
consoleAddLine(`Disconnected from network: ${networkId}`);
171172
setClientPid(0);
172173
setIsConnected(false);
173174
setNetworkConnected("");

0 commit comments

Comments
 (0)