Skip to content

Don't add listener for webview webview resource load#312490

Merged
mjbvz merged 1 commit intomicrosoft:mainfrom
mjbvz:dev/mjbvz/inland-bug
Apr 25, 2026
Merged

Don't add listener for webview webview resource load#312490
mjbvz merged 1 commit intomicrosoft:mainfrom
mjbvz:dev/mjbvz/inland-bug

Conversation

@mjbvz
Copy link
Copy Markdown
Collaborator

@mjbvz mjbvz commented Apr 25, 2026

Fixes #312367

Copilot AI review requested due to automatic review settings April 25, 2026 06:18
@mjbvz mjbvz enabled auto-merge April 25, 2026 06:18
@mjbvz mjbvz self-assigned this Apr 25, 2026
@mjbvz mjbvz added this to the 1.118.0 milestone Apr 25, 2026
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR addresses the listener leak warning reported for WebviewElement resource loading by avoiding per-resource cancellation listeners and ensuring active transferable streams are properly closed on disposal.

Changes:

  • Track active ReadableStream controllers during resource streaming to avoid registering many token.onCancellationRequested listeners.
  • Close and clear all active stream controllers when the webview element is disposed.
  • Add early _disposed guards in loadResource to avoid doing work/sending responses after disposal.
Show a summary per file
File Description
src/vs/workbench/contrib/webview/browser/webviewElement.ts Removes per-stream cancellation listener pattern and adds centralized stream controller cleanup on webview disposal to prevent listener leak warnings.

Copilot's findings

  • Files reviewed: 1/1 changed files
  • Comments generated: 0

@mjbvz mjbvz merged commit e6bbfd5 into microsoft:main Apr 25, 2026
30 checks passed
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.

[Error] unhandlederror-potential listener LEAK detected, popular — webview/webviewElement

3 participants