Visitar URL original
ArgumentOutOfRangeException in SetCursorPosition when pasting after cls · Issue #5236 · PowerShell/PSReadLine · GitHub
Skip to content

ArgumentOutOfRangeException in SetCursorPosition when pasting after cls #5236

Closed

Description

Prerequisites

  • Write a descriptive title.
  • Make sure you are able to repro it on the latest released version
  • Search the existing issues, especially the pinned issues.

Exception report

Oops, something went wrong.  Please report this bug with the details below.
Report on GitHub: https://github.com/lzybkr/PSReadLine/issues/new
-----------------------------------------------------------------------
Last 47 Keys:
 m a k e Space u p Enter
 Ctrl+v Enter
 c l s Enter
 UpArrow Space - - c o n f i r m Enter
 Ctrl+v Enter
 UpArrow Space - - c o n f i r m Enter
 Ctrl+v Enter
 c l s Enter
 Ctrl+v

Exception:
System.ArgumentOutOfRangeException: The value must be greater than or equal to zero and less than the console's buffer size in that dimension.
Parameter name: top
   at System.Console.SetCursorPosition(Int32 left, Int32 top)
   at Microsoft.PowerShell.PSConsoleReadLine.ReallyRender(RenderData renderData, String defaultColor)
   at Microsoft.PowerShell.PSConsoleReadLine.ForceRender()
   at Microsoft.PowerShell.PSConsoleReadLine.Paste(Nullable`1 key, Object arg)
   at Microsoft.PowerShell.PSConsoleReadLine.ProcessOneKey(ConsoleKeyInfo key, Dictionary`2 dispatchTable, Boolean ignoreIfNoAction, Object arg)
   at Microsoft.PowerShell.PSConsoleReadLine.InputLoop()
   at Microsoft.PowerShell.PSConsoleReadLine.ReadLine(Runspace runspace, EngineIntrinsics engineIntrinsics)
-----------------------------------------------------------------------

Screenshot

N/A

Environment data

PS Version: 5.1.19041.6456
PS HostName: ConsoleHost
PSReadLine Version: 2.0.0-beta2
PSReadLine EditMode: Windows
OS: 10.0.19041.1 (WinBuild.160101.0800)
BufferWidth: 120
BufferHeight: 3000

Steps to reproduce

  1. Open Windows PowerShell 5.1 (console host).
  2. Run a command that prints output, e.g. make up.
  3. Run cls.
  4. Paste a multi-line command with Ctrl+V and press Enter, then repeat cls and paste.
  5. After a few cls + paste cycles, PSReadLine throws the exception.

Expected behavior

The pasted text appears on the prompt without an exception.

Actual behavior

PSReadLine crashes with System.ArgumentOutOfRangeException (Parameter name: top) in Console.SetCursorPosition, called from ReallyRender during Paste. The prompt has to be redrawn.

Activity

  1. github-actions commented on Nov 13, 2026

    @github-actions

    This issue was already fixed (see #1306). Please upgrade to the 2.3.5 version of PSReadLine from PowerShell Gallery.
    See the upgrading section for instructions. Please let us know if you run into the same issue with the latest version.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions