microsoft / microsoft/vscode

VS Code Bug Report: Massive Handle Leak and System Freeze with Split Terminals (v1.135.0)

Open
#333,977 1 comment 0 reactions 1 assignee Claimed by @anthonykim1 View on GitHub
Dominant language
TypeScript
Stars
193k
Forks
42.4k
PR merge metrics
PR metrics pending

Description

# VS Code Bug Report: Massive Handle Leak and System Freeze with Split Terminals (v1.135.0)

## System Information
- **VS Code Version:** 1.135.0 (User Setup)
- **OS:** Windows 11 Pro (Build 26200)
- **CPU:** 12th Gen Intel(R) Core(TM) i7-12700H
- **RAM:** 16 GB
- **GPUs:** Intel(R) UHD Graphics (Driver: 31.0.101.5081) / NVIDIA GeForce RTX 3050 Laptop GPU (Driver: 32.0.16.1088)

## Description
Since updating to version 1.135.0, running multiple instances of heavy CLI applications (e.g., `claude-code`) in split integrated terminals causes extreme system instability. The VS Code renderer process leaks tens of thousands of system handles, leading to OS-level UI freezes and crashes in `dwm.exe` (Desktop Window Manager) or `Explorer.exe`.

## Steps to Reproduce
1. Update VS Code to `1.135.0`.
2. Open a split integrated terminal.
3. Run highly active terminal processes in both splits (like `claude-code` or anything that triggers rapid terminal repainting).
4. Wait a few moments. The system will begin to momentarily freeze.

## Diagnostics & Logs Collected

### Scenario 1: With Hardware Acceleration Enabled
When GPU acceleration is active, the terminal rendering stresses the GPU driver compositing, resulting in continuous crashes of `dwm.exe`.
**Windows Event Log Error:**
```
Faulting application name: dwm.exe
Faulting module name: dwmcore.dll
Exception code: 0xc00001ad
```

### Scenario 2: With GPU Acceleration disabled (`terminal.integrated.gpuAcceleration": "off"`)
When falling back to the legacy DOM terminal renderer, the rapid text repainting causes an **enormous handle leak**.
- System logs revealed a VS Code `--type=renderer` process holding **72,924 open handles** just prior to a system freeze.
- This resource exhaustion eventually caused Windows Explorer to crash abruptly.
**Windows Event Log Error:**
```
Faulting application name: Explorer.EXE
Faulting module name: Windows.UI.Xaml.dll
Exception code: 0xc0000409 (STATUS_STACK_BUFFER_OVERRUN)
```

## Workaround Found
The issue can be completely bypassed by downgrading to `1.134.0`, or by explicitly forcing the terminal renderer to `canvas` in the settings:
```json
"terminal.integrated.gpuAcceleration": "canvas"
```

## Request
Please investigate potential memory/handle leaks introduced in the terminal rendering pipeline (both WebGL and DOM) in the `1.135.0` update.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.