Some kind of unicode regression #6604

Closed
opened 2026-01-31 00:42:50 +00:00 by claunia · 5 comments
Owner

Originally created by @djdv on GitHub (Feb 23, 2020).

Originally assigned to: @miniksa on GitHub.

Environment

Windows build number: 10.0.18363.0
Windows Terminal version (if applicable): 4420950337ccdd7bb5bb66d84538d2ea4195c101
Powershell 7-rc3

Steps to reproduce

After 4420950337, characters like 🏠 appear to get corrupted.

I'm using this symbol in my Powershell prompt and it has stopped working as expected.
7d6738cde7:
001
4420950337:
002

$script:pathDelim = [IO.Path]::DirectorySeparatorChar.ToString()
(@($pwd.Path.Split($pathDelim) | select-object -skip 1) -join  $pathDelim).replace([environment]::UserName, "🏠
Originally created by @djdv on GitHub (Feb 23, 2020). Originally assigned to: @miniksa on GitHub. <!-- 🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨 I ACKNOWLEDGE THE FOLLOWING BEFORE PROCEEDING: 1. If I delete this entire template and go my own path, the core team may close my issue without further explanation or engagement. 2. If I list multiple bugs/concerns in this one issue, the core team may close my issue without further explanation or engagement. 3. If I write an issue that has many duplicates, the core team may close my issue without further explanation or engagement (and without necessarily spending time to find the exact duplicate ID number). 4. If I leave the title incomplete when filing the issue, the core team may close my issue without further explanation or engagement. 5. If I file something completely blank in the body, the core team may close my issue without further explanation or engagement. All good? Then proceed! --> <!-- This bug tracker is monitored by Windows Terminal development team and other technical folks. **Important: When reporting BSODs or security issues, DO NOT attach memory dumps, logs, or traces to Github issues**. Instead, send dumps/traces to secure@microsoft.com, referencing this GitHub issue. If this is an application crash, please also provide a Feedback Hub submission link so we can find your diagnostic data on the backend. Use the category "Apps > Windows Terminal (Preview)" and choose "Share My Feedback" after submission to get the link. Please use this form and describe your issue, concisely but precisely, with as much detail as possible. --> # Environment ```none Windows build number: 10.0.18363.0 Windows Terminal version (if applicable): 4420950337ccdd7bb5bb66d84538d2ea4195c101 Powershell 7-rc3 ``` # Steps to reproduce <!-- A description of how to trigger this bug. --> After 4420950337ccdd7bb5bb66d84538d2ea4195c101, characters like `🏠` appear to get corrupted. I'm using this symbol in my Powershell prompt and it has stopped working as expected. 7d6738cde745655b26119aaf0daa810f615f0360: ![001](https://user-images.githubusercontent.com/13862850/75122418-45289b80-566b-11ea-9c78-cbcbf38ba968.png) 4420950337ccdd7bb5bb66d84538d2ea4195c101: ![002](https://user-images.githubusercontent.com/13862850/75122419-4bb71300-566b-11ea-948b-7dc6e9617db3.png) ```Powershell $script:pathDelim = [IO.Path]::DirectorySeparatorChar.ToString() (@($pwd.Path.Split($pathDelim) | select-object -skip 1) -join $pathDelim).replace([environment]::UserName, "🏠 ```
Author
Owner

@DHowett-MSFT commented on GitHub (Feb 24, 2020):

Yeah, this is fairly serious. 😄

Thanks!

I bet it's part of the conpty change in 4420950.

image

function things {
write-host "🏠"
write-host "a🏠"
write-host "🏠b"
write-host "c🏠d"
}

/cc @miniksa

@DHowett-MSFT commented on GitHub (Feb 24, 2020): Yeah, this is fairly serious. :smile: Thanks! I bet it's part of the conpty change in 4420950. ![image](https://user-images.githubusercontent.com/14316954/75136321-2e993900-5699-11ea-80e1-313ad6358bd1.png) ``` function things { write-host "🏠" write-host "a🏠" write-host "🏠b" write-host "c🏠d" } ``` /cc @miniksa
Author
Owner

@miniksa commented on GitHub (Feb 26, 2020):

function things {
write-host "`u{1f3e0}"
write-host "a`u{1f3e0}"
write-host "`u{1f3e0}b"
write-host "c`u{1f3e0}d"
}
@miniksa commented on GitHub (Feb 26, 2020): ``` function things { write-host "`u{1f3e0}" write-host "a`u{1f3e0}" write-host "`u{1f3e0}b" write-host "c`u{1f3e0}d" } ```
Author
Owner

@miniksa commented on GitHub (Feb 26, 2020):

SURROGATE PAIRS!

shakes fist into air

@miniksa commented on GitHub (Feb 26, 2020): SURROGATE PAIRS! *shakes fist into air*
Author
Owner

@djdv commented on GitHub (Mar 1, 2020):

@DHowett-MSFT , @miniksa
Thanks for the render fix!
However, this is still presenting an issue.
If I set glyphs like that to be part of the prompt, I'm not able to actually use the shell (input seems to do nothing).
Rendering them seems fine however.
Example: https://youtu.be/5Dswxk6XdTs

EDIT: spoke too soon
This doesn't happen under https://github.com/microsoft/terminal/pull/4747 (ddadcc5fa9) but does in current master (4608fd0b94 ).

@djdv commented on GitHub (Mar 1, 2020): @DHowett-MSFT , @miniksa Thanks for the render fix! However, this is still presenting an issue. If I set glyphs like that to be part of the prompt, I'm not able to actually use the shell (input seems to do nothing). Rendering them seems fine however. Example: https://youtu.be/5Dswxk6XdTs EDIT: spoke too soon This doesn't happen under https://github.com/microsoft/terminal/pull/4747 (ddadcc5fa9b0105df2e72baf235f09e9ea482b2c) but does in current master (4608fd0b94af2f4cf6ceec7b324ba36462e9c06b ).
Author
Owner

@miniksa commented on GitHub (Mar 2, 2020):

@DHowett-MSFT Dustin Howett FTE , @miniksa Michael Niksa FTE
Thanks for the render fix!
However, this is still presenting an issue.
If I set glyphs like that to be part of the prompt, I'm not able to actually use the shell (input seems to do nothing).
Rendering them seems fine however.
Example: youtu.be/5Dswxk6XdTs

EDIT: spoke too soon
This doesn't happen under #4747 (ddadcc5) but does in current master (4608fd0 ).

OK, great. I'm trying to bring #4747 in ASAP, so hopefully this will be fully resolved for you then.

@miniksa commented on GitHub (Mar 2, 2020): > @DHowett-MSFT Dustin Howett FTE , @miniksa Michael Niksa FTE > Thanks for the render fix! > However, this is still presenting an issue. > If I set glyphs like that to be part of the prompt, I'm not able to actually use the shell (input seems to do nothing). > Rendering them seems fine however. > Example: [youtu.be/5Dswxk6XdTs](https://youtu.be/5Dswxk6XdTs) > > EDIT: spoke too soon > This doesn't happen under #4747 ([ddadcc5](https://github.com/microsoft/terminal/commit/ddadcc5fa9b0105df2e72baf235f09e9ea482b2c)) but does in current master ([4608fd0](https://github.com/microsoft/terminal/commit/4608fd0b94af2f4cf6ceec7b324ba36462e9c06b) ). OK, great. I'm trying to bring #4747 in ASAP, so hopefully this will be fully resolved for you then.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#6604