fix(app-state): refactor quitting logic to use setQuitting function (#199)

This commit is contained in:
Haze
2026-02-26 22:57:03 +08:00
committed by GitHub
Unverified
parent 45d5e9e576
commit 3420ee2447
3 changed files with 16 additions and 14 deletions

View File

@@ -15,13 +15,13 @@ import { warmupNetworkOptimization } from '../utils/uv-env';
import { ClawHubService } from '../gateway/clawhub';
import { ensureClawXContext, repairClawXOnlyBootstrapFiles } from '../utils/openclaw-workspace';
import { isQuitting, setQuitting } from './app-state';
// Disable GPU acceleration for better compatibility
app.disableHardwareAcceleration();
// Global references
let mainWindow: BrowserWindow | null = null;
let isQuitting = false;
const gatewayManager = new GatewayManager();
const clawHubService = new ClawHubService();
@@ -239,7 +239,7 @@ app.on('window-all-closed', () => {
});
app.on('before-quit', () => {
isQuitting = true;
setQuitting();
// Fire-and-forget: do not await gatewayManager.stop() here.
// Awaiting inside before-quit can stall Electron's quit sequence.
void gatewayManager.stop().catch((err) => {