Maybe Windows doesn't use GetConsoleCP(), but at least here it's definitely using OEM codepage.
according to https://testbot.winehq.org/JobDetails.pl?Key=112920
W7 up to 10 do use OEM cp (tested with various locale settings)
however, running locally on W11 I get:
cpcp.c:75: Run on éric, cpflags=0 cpcp.c:76: OEM(437): ko cpcp.c:77: ACP(0): ok cpcp.c:79: Con(1252): ok cpcp.c:80: UFT7: ko cpcp.c:81: UTF8: ko cpcp.c:82: mbcp: ok cpcp.c:75: Run on éric, cpflags=8 cpcp.c:76: OEM(437): ko cpcp.c:77: ACP(0): ok cpcp.c:79: Con(0): ok cpcp.c:80: UFT7: ko cpcp.c:81: UTF8: ko cpcp.c:82: mbcp: ok 0bf4:cpcp: 10 tests executed (0 marked as todo, 0 failures), 0 skipped.
(note: when not attached to a console, GetConsole(Output)CP() returns 0 for failure...
if this is not tested for failure, and passed as code page for MB conversion, it's CP_ACP)
so do we stick to W7-W10 behavior and always use OEM CP?
A+