splitPane causes memory leak in latest release (v0.10.761.0) #6947

Closed
opened 2026-01-31 00:51:18 +00:00 by claunia · 4 comments
Owner

Originally created by @Armadill0 on GitHub (Mar 18, 2020).

Originally assigned to: @zadjii-msft on GitHub.

I updated to the latest release (v0.10.761.0) yesterday and tried out the splitPane functionality today. After configuring some keybindings for that Terminal crashes and consumes my 32GB of memory within seconds.
If I remove the configuration for the sdplitPane keybindings again I cannot reproduce this.

This happens:

  • with my default profile (Fedora Remix) instantly
  • with the default PowerShell profile instantly by splitPane in horizontal mode
  • with the default PowerShell profile after splitPane the first time in vertical mode and then send another one right after

Environment

Windows build number:  10.0.18363.0
Windows Terminal version (if applicable): 0.10.761.0

Any other software? no

Steps to reproduce

  • used the following configuration:
// To view the default settings, hold "alt" while clicking on the "Settings" button.
// For documentation on these settings, see: https://aka.ms/terminal-documentation

{
    "$schema": "https://aka.ms/terminal-profiles-schema",
    "copyOnSelect": true,
    "defaultProfile": "{d3f31bee-5823-5ed8-8e04-f31ed54f2cd9}",
    "initialPosition": "-1920,0",
    "launchMode": "maximized",
    "profiles":
    [
        {
            "guid": "{d3f31bee-5823-5ed8-8e04-f31ed54f2cd9}",
            "acrylicOpacity": 0.8,
            "hidden": false,
            "historySize": 9999999,
            "name": "fedoraremix",
            "startingDirectory" : "//wsl$/fedoraremix/home/tamler",
            "source": "Windows.Terminal.Wsl",
            "fontSize": 10,
            "fontFace": "DejaVu Sans Mono for Powerline",
            "useAcrylic": true
        },
        {
            // Make changes here to the powershell.exe profile
            "guid": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}",
            "name": "Windows PowerShell",
            "commandline": "powershell.exe",
            "hidden": false
        },
        {
            // Make changes here to the cmd.exe profile
            "guid": "{0caa0dad-35be-5f56-a8ff-afceeeaa6101}",
            "name": "cmd",
            "commandline": "cmd.exe",
            "hidden": false
        },
        {
            "guid": "{b453ae62-4e3d-5e58-b989-0a998ec441b8}",
            "hidden": false,
            "name": "Azure Cloud Shell",
            "source": "Windows.Terminal.Azure"
        }
    ],

    // Add custom color schemes to this array
    "schemes": [],

    // Add any keybinding overrides to this array.
    // To unbind a default keybinding, set the command to "unbound"
    "keybindings": [
        {"command": "prevTab", "keys": ["shift+left"] },
        {"command": "nextTab", "keys": ["shift+right"] },
        {"command": "scrollUpPage", "keys": ["shift+pageup"] },
        {"command": "scrollDownPage", "keys": ["shift+pagedown"] },
        {"command": {"action": "splitPane", "split": "vertical"}, "keys": ["ctrl+shift+right"] },
        {"command": {"action": "splitPane", "split": "horizontal"}, "keys": ["ctrl+shift+down"] },
        {"command": "copy", "keys": ["ctrl+shift+c"] },
        {"command": "paste", "keys": ["ctrl+shift+v"] },
        {"command": "paste", "keys": ["shift+insert"] }
    ]
}
  • open new Powershell profile tab
  • use ctrl+shift+down to split down and crash immediately OR ctrl+shift+right twice to crash

Expected behavior

Split the pane, which actually works with the Powershell profile in vertical mode the first time.

Actual behavior

splitPane works the first time on a Powershell Profile in vertical mode, but crashes after sending the command again right after the first time.
In horizontal mode it instantly crashes.
In the Fedora Remix profile (default) it crashes regardless of the mode.

Independent of the profile Terminal consumes all of my memory within 20 seconds. Partly screenshot from task manager:
Terminal-memconsumption

Originally created by @Armadill0 on GitHub (Mar 18, 2020). Originally assigned to: @zadjii-msft on GitHub. I updated to the latest release (v0.10.761.0) yesterday and tried out the splitPane functionality today. After configuring some keybindings for that Terminal crashes and consumes my 32GB of memory within seconds. If I remove the configuration for the sdplitPane keybindings again I cannot reproduce this. This happens: * with my default profile (Fedora Remix) instantly * with the default PowerShell profile instantly by splitPane in horizontal mode * with the default PowerShell profile after splitPane the first time in vertical mode and then send another one right after # Environment ```none Windows build number: 10.0.18363.0 Windows Terminal version (if applicable): 0.10.761.0 Any other software? no ``` # Steps to reproduce * used the following configuration: ``` // To view the default settings, hold "alt" while clicking on the "Settings" button. // For documentation on these settings, see: https://aka.ms/terminal-documentation { "$schema": "https://aka.ms/terminal-profiles-schema", "copyOnSelect": true, "defaultProfile": "{d3f31bee-5823-5ed8-8e04-f31ed54f2cd9}", "initialPosition": "-1920,0", "launchMode": "maximized", "profiles": [ { "guid": "{d3f31bee-5823-5ed8-8e04-f31ed54f2cd9}", "acrylicOpacity": 0.8, "hidden": false, "historySize": 9999999, "name": "fedoraremix", "startingDirectory" : "//wsl$/fedoraremix/home/tamler", "source": "Windows.Terminal.Wsl", "fontSize": 10, "fontFace": "DejaVu Sans Mono for Powerline", "useAcrylic": true }, { // Make changes here to the powershell.exe profile "guid": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}", "name": "Windows PowerShell", "commandline": "powershell.exe", "hidden": false }, { // Make changes here to the cmd.exe profile "guid": "{0caa0dad-35be-5f56-a8ff-afceeeaa6101}", "name": "cmd", "commandline": "cmd.exe", "hidden": false }, { "guid": "{b453ae62-4e3d-5e58-b989-0a998ec441b8}", "hidden": false, "name": "Azure Cloud Shell", "source": "Windows.Terminal.Azure" } ], // Add custom color schemes to this array "schemes": [], // Add any keybinding overrides to this array. // To unbind a default keybinding, set the command to "unbound" "keybindings": [ {"command": "prevTab", "keys": ["shift+left"] }, {"command": "nextTab", "keys": ["shift+right"] }, {"command": "scrollUpPage", "keys": ["shift+pageup"] }, {"command": "scrollDownPage", "keys": ["shift+pagedown"] }, {"command": {"action": "splitPane", "split": "vertical"}, "keys": ["ctrl+shift+right"] }, {"command": {"action": "splitPane", "split": "horizontal"}, "keys": ["ctrl+shift+down"] }, {"command": "copy", "keys": ["ctrl+shift+c"] }, {"command": "paste", "keys": ["ctrl+shift+v"] }, {"command": "paste", "keys": ["shift+insert"] } ] } ``` * open new Powershell profile tab * use ctrl+shift+down to split down and crash immediately OR ctrl+shift+right twice to crash # Expected behavior Split the pane, which actually works with the Powershell profile in vertical mode the first time. # Actual behavior splitPane works the first time on a Powershell Profile in vertical mode, but crashes after sending the command again right after the first time. In horizontal mode it instantly crashes. In the Fedora Remix profile (default) it crashes regardless of the mode. Independent of the profile Terminal consumes all of my memory within 20 seconds. Partly screenshot from task manager: ![Terminal-memconsumption](https://user-images.githubusercontent.com/6536990/76936765-c33b3380-68f3-11ea-86ba-5e9ea6215e4b.png)
Author
Owner

@zadjii-msft commented on GitHub (Mar 18, 2020):

Yea I'm almost positive that this is the same problem that's being reported in #4972, and is actually already fixed in #4964.

As a mitigation, you can reduce your historySize to something smaller, even 30000 would probably be safe. The problem here is an integer overflow 🤦‍♂

I'm gonna leave this open until I can confirm that's the cause of #4972 as well.

@zadjii-msft commented on GitHub (Mar 18, 2020): Yea I'm almost positive that this is the same problem that's being reported in #4972, and is actually already fixed in #4964. As a mitigation, you can reduce your `historySize` to something smaller, even 30000 would probably be safe. The problem here is an integer overflow 🤦‍♂ I'm gonna leave this open until I can confirm that's the cause of #4972 as well.
Author
Owner

@zadjii-msft commented on GitHub (Mar 18, 2020):

(we've confirmed this is in fact a /dup of #4972)

@zadjii-msft commented on GitHub (Mar 18, 2020): (we've confirmed this is in fact a /dup of #4972)
Author
Owner

@ghost commented on GitHub (Mar 18, 2020):

Hi! We've identified this issue as a duplicate of another one that already exists on this Issue Tracker. This specific instance is being closed in favor of tracking the concern over on the referenced thread. Thanks for your report!

@ghost commented on GitHub (Mar 18, 2020): Hi! We've identified this issue as a duplicate of another one that already exists on this Issue Tracker. This specific instance is being closed in favor of tracking the concern over on the referenced thread. Thanks for your report!
Author
Owner

@Armadill0 commented on GitHub (Mar 18, 2020):

Thank you very much!

@Armadill0 commented on GitHub (Mar 18, 2020): Thank you very much!
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#6947