eric pouech (@epo) commented about programs/cmd/lineedit.c:
+ ClearConsoleCharacters(hOutput, maxLen - len); + } + SetCursorVisible(hOutput, TRUE); + + inputControl.nLength = sizeof(inputControl); + inputControl.nInitialChars = len; + inputControl.dwCtrlWakeupMask = (1 << 0x09) | (1 << 0x1B); + /* FIXME: In the Windows SDK this is called dwControlKeyState */ + inputControl.dwConsoleKeyState = 0; + + ret = ReadConsoleW(hInput, inputBuffer, inputBufferLength, numRead, &inputControl); + + if (ret) { + inputBuffer[*numRead] = L'\0'; + TRACE("ReadConsole: [%lu][%s]\n", *numRead, wine_dbgstr_w(inputBuffer)); + len = lstrlenW(inputBuffer); isn't len == \*numRead?
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/7843#note_101475