Skip to content

System.ArgumentOutOfRangeException Exception When Pasting Content into Windows PowerShell Window #4753

@zkotani

Description

@zkotani

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 200 Keys:
 Backspace Backspace Tab Tab Enter
 Ctrl+v Enter
 Ctrl+v Enter
 Ctrl+v Enter
 $ i m a Tab Enter
 $ d o c k e r C Tab Enter
 $ n u l l Space - n e Space $ l a s Backspace t Tab Enter
 $ d o c k Tab . C o Tab Tab u n t Enter
 Backspace Backspace $ n u l l Space - n e Space $ i m Tab Enter
 f o r Space ( $ i Space = Space - Backspace 0 ; Space $ i Space - ; l Backspace Backspace l t 1 Backspace Space 1 ; Space $ i + + ) Space { Backspace Space { Space $ i Space } Enter
 $ d o c k Tab Tab Enter
 Ctrl+v Enter
 $ l a t Tab Tab Enter
 Ctrl+v Enter
 c l s Enter
 Ctrl+v Enter
 Ctrl+v Enter
 Ctrl+v Enter
 Ctrl+v Enter
 d o c k e r Space p s s Space Backspace Backspace Space Enter
 UpArrow Enter
 UpArrow Enter
 UpArrow Enter
 $ n u l l Space - n e Space $ i m a g e i Tab 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
Actual value was -3.
   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

I had just cleared the console so there is nothing in the window prior to the exception. Including it here to provide as much information as I can, however.

Image

Environment data

PS Version: 5.1.17763.7309
PS HostName: ConsoleHost
PSReadLine Version: 2.0.0-beta2
PSReadLine EditMode: Windows
OS: 10.0.17763.1 (WinBuild.160101.0800)
BufferWidth: 134
BufferHeight: 3000

Steps to reproduce

Unclear. I had copied 4 lines from a text document, entered cls<Enter>, and then entered <Ctrl>+v to paste the lines.

Expected behavior

Copied lines would paste into the console & there would not be an exception.

Actual behavior

The above exception occurs and no copied lines are pasted.

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