Windows: fixes getch bug; fixes #6966 (#7031)

This commit is contained in:
Dmitry Atamanov 2018-01-05 19:32:05 +03:00 • committed by Andreas Rumpf
commit 6cf8a72d49

View file

@ -634,7 +634,10 @@ proc getch*(): char =
doAssert(readConsoleInput(fd, addr(keyEvent), 1, addr(numRead)) != 0) doAssert(readConsoleInput(fd, addr(keyEvent), 1, addr(numRead)) != 0)
if numRead == 0 or keyEvent.eventType != 1 or keyEvent.bKeyDown == 0: if numRead == 0 or keyEvent.eventType != 1 or keyEvent.bKeyDown == 0:
continue continue
return char(keyEvent.uChar) if keyEvent.uChar == 0:
return char(keyEvent.wVirtualKeyCode)
else:
return char(keyEvent.uChar)
else: else:
let fd = getFileHandle(stdin) let fd = getFileHandle(stdin)
var oldMode: Termios var oldMode: Termios