Skip to content

fix: guard webview access after panel disposal - #12

Merged
damoahdominic merged 1 commit into
damoahdominic:mainfrom
ninjaa:fix/webview-disposed-guard
Feb 18, 2026
Merged

fix: guard webview access after panel disposal#12
damoahdominic merged 1 commit into
damoahdominic:mainfrom
ninjaa:fix/webview-disposed-guard

Conversation

@ninjaa

@ninjaa ninjaa commented Feb 18, 2026

Copy link
Copy Markdown

Problem

Both StatusPanel and ConfigPanel crash with "Webview is disposed" when _update() or _pollStatus() run after the panel has been closed. The async status fetch completes and tries to write HTML to a dead webview.

Fix

Added a _disposed flag to both panels, set on dispose(), checked before every webview.html assignment.

Files changed

  • apps/extension/src/panels/status.ts — guard in _update() and _pollStatus()
  • apps/extension/src/panels/setup.ts — guard in _update()

Both StatusPanel and ConfigPanel could crash with 'Webview is disposed'
when _update() or _pollStatus() ran after the panel was closed. Added
_disposed flag checked before any webview.html assignment.
@damoahdominic
damoahdominic merged commit 652679b into damoahdominic:main Feb 18, 2026
4 checks passed
damoahdominic added a commit that referenced this pull request Mar 16, 2026
fix: guard webview access after panel disposal
damoahdominic added a commit that referenced this pull request Mar 16, 2026
fix: guard webview access after panel disposal
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants