Toggling Legacy console on and off enables Terminal colors but sets them to all black #3241

Closed
opened 2026-01-30 23:16:39 +00:00 by claunia · 13 comments
Owner

Originally created by @nachtsaktiv on GitHub (Aug 7, 2019).

Originally assigned to: @zadjii-msft on GitHub.

Environment

Microsoft Windows [Version 10.0.18362.239]

Steps to reproduce

1.Open a CMD
2.Settings > Options > Check Legacy
3.Restart CMD
4.Settings > Options > Uncheck Legacy
5.Restart CMD
6.Get a full black screen.

Actual behavior

Anmerkung 2019-08-07 110052

Screenshot from Settings after the steps to reproduce.

What's actually happening?

The problem is that i run a script on shutting down my computer which is for backup and ask me in a CMD if i want to backup my files.
Since the new update, this CMD is all black. So i just know what there is written, but i can't see it actually.
I think this causes from this bug.

Originally created by @nachtsaktiv on GitHub (Aug 7, 2019). Originally assigned to: @zadjii-msft on GitHub. # Environment Microsoft Windows [Version 10.0.18362.239] # Steps to reproduce 1.Open a CMD 2.Settings > Options > Check Legacy 3.Restart CMD 4.Settings > Options > Uncheck Legacy 5.Restart CMD 6.Get a full black screen. # Actual behavior ![Anmerkung 2019-08-07 110052](https://user-images.githubusercontent.com/53857169/62610352-d0c32080-b903-11e9-9eaa-6bd1aecbe406.png) Screenshot from Settings after the steps to reproduce. # What's actually happening? The problem is that i run a script on shutting down my computer which is for backup and ask me in a CMD if i want to backup my files. Since the new update, this CMD is all black. So i just know what there is written, but i can't see it actually. I think this causes from this bug.
Author
Owner

@DHowett-MSFT commented on GitHub (Aug 8, 2019):

Definitely a real bug.

@DHowett-MSFT commented on GitHub (Aug 8, 2019): Definitely a real bug.
Author
Owner

@zadjii-msft commented on GitHub (Aug 8, 2019):

AHHHH That explains how to get into this state. I've seen it in the wild once in a blue moon, but never figured out how to repro it. THANK YOU for figuring out how to get into this state. WE can work with this :)

@zadjii-msft commented on GitHub (Aug 8, 2019): AHHHH That explains how to get into this state. I've seen it in the wild once in a blue moon, but never figured out how to repro it. THANK YOU for figuring out how to get into this state. WE can work with this :)
Author
Owner

@zadjii-msft commented on GitHub (Sep 3, 2019):

(preliminary thoughts without debugging)

This might happen either with a shortcut or a registry entry.

We might be able to get away with looking to see if those settings are present. When the v1 console is saving the settings, it's probably not zeroing those settings. It's probably removing the keys from the shortcut entirely. We might be able to get away with having the console use INVALID_COLOR when those keys aren't found.

I'd really doubt actually that this happens when opening the settings from the registry - the v1 conhost shouldn't set those reg keys to 0, since it won't know what they even are. Maybe there's a chance that console.dll is actually still zeroing them in v1 mode. That could be an easy fix too.

Worst case, we could check if all 3 of default foreground, default background, and cursor color are all 0. If all 3 are zero, we could take that as a sign that the settings were erroneously zero'd, and reset all of them to INVALID_COLOR. That would get rid of the technically valid state of wanting all three to be black, but what kind of monster would want that?

@zadjii-msft commented on GitHub (Sep 3, 2019): (preliminary thoughts without debugging) This might happen either with a shortcut or a registry entry. We might be able to get away with looking to see if those settings are present. When the v1 console is saving the settings, it's probably not zeroing those settings. It's probably removing the keys from the shortcut entirely. We might be able to get away with having the console use `INVALID_COLOR` when those keys aren't found. I'd really doubt actually that this happens when opening the settings from the registry - the v1 conhost shouldn't set those reg keys to 0, since it won't know what they even are. Maybe there's a chance that `console.dll` is actually still zeroing them in v1 mode. That could be an easy fix too. Worst case, we could check if all 3 of default foreground, default background, and cursor color are all 0. If all 3 are zero, we could take that as a sign that the settings were erroneously zero'd, and reset all of them to INVALID_COLOR. That would get rid of the technically valid state of wanting all three to be black, but _what kind of monster would want that?_
Author
Owner

@DHowett-MSFT commented on GitHub (Oct 30, 2019):

Hey! The fix for this went out in Windows in the Insider channel's Fast Ring with build 19013.

@DHowett-MSFT commented on GitHub (Oct 30, 2019): Hey! The fix for this went out in Windows in the Insider channel's Fast Ring with build 19013.
Author
Owner

@asm128 commented on GitHub (Dec 30, 2019):

Shouldn't you reopen this one?

https://www.youtube.com/watch?v=5uad-WSV1_I

@asm128 commented on GitHub (Dec 30, 2019): Shouldn't you reopen this one? https://www.youtube.com/watch?v=5uad-WSV1_I
Author
Owner

@DHowett-MSFT commented on GitHub (Dec 30, 2019):

From our perspective, this bug is fixed. The fix will be available in the next version of Windows. The workaround is easy, and we do not service bug fixes for bugs with easy workarounds unless somebody can provide a significant business justification.

@DHowett-MSFT commented on GitHub (Dec 30, 2019): From our perspective, this bug is fixed. The fix will be available in the next version of Windows. The workaround is easy, and we do not service bug fixes for bugs with easy workarounds unless somebody can provide a significant business justification.
Author
Owner

@asm128 commented on GitHub (Dec 30, 2019):

I see no workaround and there is no way to turn the fonts to any color other than black, nor the background colors whatsoever. It makes the V2 console completely unusable.

@asm128 commented on GitHub (Dec 30, 2019): I see no workaround and there is no way to turn the fonts to any color other than black, nor the background colors whatsoever. It makes the V2 console completely unusable.
Author
Owner

@DHowett-MSFT commented on GitHub (Dec 30, 2019):

I gave you a workaround in the other thread you started about this issue. Go to the Terminal settings page and turn off all of the “separate color” options.

@DHowett-MSFT commented on GitHub (Dec 30, 2019): I gave you a workaround in the other thread you started about this issue. Go to the Terminal settings page and turn _off_ all of the “separate color” options.
Author
Owner

@asm128 commented on GitHub (Dec 30, 2019):

It worked. Thank you.

@asm128 commented on GitHub (Dec 30, 2019): It worked. Thank you.
Author
Owner

@androidacy-user commented on GitHub (Apr 23, 2020):

I gave you a workaround in the other thread you started about this issue. Go to the Terminal settings page and turn off all of the “separate color” options.

Default behavior should NEVER break applications. That is extremely bad UX. A workaround is never a resolution.

@androidacy-user commented on GitHub (Apr 23, 2020): > I gave you a workaround in the other thread you started about this issue. Go to the Terminal settings page and turn _off_ all of the “separate color” options. Default behavior should NEVER break applications. That is extremely bad UX. A workaround is never a resolution.
Author
Owner

@DHowett-MSFT commented on GitHub (Apr 23, 2020):

@linuxandria it’s a workaround for somebody to get out of this state without upgrading Windows to resolve the bug. It’s not a default state. It’s a bug. That’s why we fixed it.

@DHowett-MSFT commented on GitHub (Apr 23, 2020): @linuxandria _it’s a workaround for somebody to get out of this state without upgrading Windows to resolve the bug_. It’s not a default state. It’s a bug. That’s why we fixed it.
Author
Owner

@androidacy-user commented on GitHub (Apr 23, 2020):

@linuxandria it’s a workaround for somebody to get out of this state without upgrading Windows to resolve the bug. It’s not a default state. It’s a bug. That’s why we fixed it.

I feel your statement could be better worded to mean that. From my interpretation, you are saying (excl one sentence where you say the opposite) that this will not be fixed, because it has a workaround. I do apologize for any misunderstanding but you really should strive for maximum clarity. We can't all read your thought :P

@androidacy-user commented on GitHub (Apr 23, 2020): > @linuxandria _it’s a workaround for somebody to get out of this state without upgrading Windows to resolve the bug_. It’s not a default state. It’s a bug. That’s why we fixed it. I feel your statement could be better worded to mean that. From my interpretation, you are saying (excl one sentence where you say the opposite) that this will not be fixed, because it has a workaround. I do apologize for any misunderstanding but you really should strive for maximum clarity. We can't all read your thought :P
Author
Owner

@DHowett-MSFT commented on GitHub (Apr 23, 2020):

Sorry 😄

@DHowett-MSFT commented on GitHub (Apr 23, 2020): Sorry 😄
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#3241