Skip to content

PSReadLine Exception when filtering with replacement character � #5228

Open

Description

@lendf

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 ALL the details below, including both the 'Environment' and 'Exception' sections.
Please report on GitHub: https://github.com/PowerShell/PSReadLine/issues/new?template=Bug_Report.yaml
Thank you!

 

### Environment

PSReadLine: 2.4.5
PowerShell: 7.6.9
OS: Microsoft Windows 10.0.20348
BufferWidth: 317
BufferHeight: 9001
 

Last 200 Keys:

e c t o r y D e l e t e d I t e m A s G r o u p Spacebar - A l l Enter
$ d e t e l e t Backspace Backspace Backspace t e d I t e m s Enter
G e t - M g D i r e c t o r y D e l e t e d I t e m A s G r o u p Enter
Enter
UpArrow . Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace Backspace UpArrow UpArrow Enter

UpArrow LeftArrow LeftArrow LeftArrow LeftArrow LeftArrow LeftArrow LeftArrow LeftArrow LeftArrow LeftArrow RightArrow Backspace l ; Backspace Enter

UpArrow . d e s c r i p t i o n Spacebar - = Backspace l i k e Spacebar ' ' LeftArrow � � Backspace * Enter

Enter

Enter

Enter

Enter

Enter

UpArrow Enter

UpArrow LeftArrow LeftArrow Backspace T Enter

UpArrow UpArrow LeftArrow LeftArrow Enter

LeftArrow LeftArrow Spacebar Enter

 

 

### Exception

 

System.Text.EncoderFallbackException: Unable to translate Unicode character \\uD83D at index 33 to specified code page.

   at System.Text.EncoderExceptionFallbackBuffer.Fallback(Char charUnknown, Int32 index)

   at System.Text.Encoding.GetBytesWithFallback(ReadOnlySpan`1 chars, Int32 originalCharsLength, Span`1 bytes, Int32 originalBytesLength, EncoderNLS encoder, Boolean throwForDestinationOverflow)

   at System.Text.Encoding.GetBytesWithFallback(Char* pOriginalChars, Int32 originalCharCount, Byte* pOriginalBytes, Int32 originalByteCount, Int32 charsConsumedSoFar, Int32 bytesWrittenSoFar, EncoderNLS encoder)

   at System.IO.StreamWriter.Flush(Boolean flushStream, Boolean flushEncoder)

   at System.IO.StreamWriter.Dispose(Boolean disposing)

   at System.IO.TextWriter.Dispose()

   at Microsoft.PowerShell.PSConsoleReadLine.<>c__DisplayClass104_0.<WriteHistoryRange>b__0()

   at Microsoft.PowerShell.PSConsoleReadLine.<>c__DisplayClass104_0.<WriteHistoryRange>b__0()

   at Microsoft.PowerShell.PSConsoleReadLine.WithHistoryFileMutexDo(Int32 timeout, Action action)

   at Microsoft.PowerShell.PSConsoleReadLine.WriteHistoryRange(Int32 start, Int32 end, Boolean overwritten)

   at Microsoft.PowerShell.PSConsoleReadLine.IncrementalHistoryWrite()

   at Microsoft.PowerShell.PSConsoleReadLine.MaybeAddToHistory(String result, List`1 edits, Int32 undoEditIndex, Boolean fromDifferentSession, Boolean fromInitialRead)

   at Microsoft.PowerShell.PSConsoleReadLine.InputLoop()

   at Microsoft.PowerShell.PSConsoleReadLine.ReadLine(Runspace runspace, EngineIntrinsics engineIntrinsics, CancellationToken cancellationToken, Nullable`1 lastRunStatus)

Screenshot

Environment data

PS Version: 7.6.9
PS HostName: ConsoleHost
PSReadLine Version: 2.4.5
PSReadLine EditMode: Windows
OS: 10.0.20348.4647 (WinBuild.160101.0800)
BufferWidth: 317
BufferHeight: 9001

Steps to reproduce

$deleteditems = Get - MgDirectoryDeletedItemAsGroup
$deletedItems.description -like '�*'

Expected behavior

No exception

Actual behavior

the above happens

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

    Needs-Triage 🔍It's a new issue that core contributor team needs to triage.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions