password: fix secure input with echo on windows

Thanks to iDunk for the testing back and forth
This commit is contained in:
moneromooo-monero 2018-10-10 12:15:20 +00:00
parent c23b6f8f56
commit 0e33cf89d2
No known key found for this signature in database
GPG Key ID: 686F07454D6CEFC3
1 changed files with 6 additions and 2 deletions

View File

@ -60,7 +60,7 @@ namespace
DWORD mode_old; DWORD mode_old;
::GetConsoleMode(h_cin, &mode_old); ::GetConsoleMode(h_cin, &mode_old);
DWORD mode_new = mode_old & ~((hide_input ? ENABLE_ECHO_INPUT : 0) | ENABLE_LINE_INPUT); DWORD mode_new = mode_old & ~(hide_input ? ENABLE_ECHO_INPUT : 0);
::SetConsoleMode(h_cin, mode_new); ::SetConsoleMode(h_cin, mode_new);
bool r = true; bool r = true;
@ -78,7 +78,11 @@ namespace
{ {
break; break;
} }
else if (ucs2_ch == L'\n' || ucs2_ch == L'\r') else if (ucs2_ch == L'\r')
{
continue;
}
else if (ucs2_ch == L'\n')
{ {
std::cout << std::endl; std::cout << std::endl;
break; break;