debug: Fixed application crashing on Windows if not console is attached

This commit is contained in:
WerWolv 2021-11-28 21:33:46 +01:00
parent dd35a717b7
commit 4effa999b3
1 changed files with 11 additions and 9 deletions

View File

@ -171,17 +171,19 @@
void Window::initNative() { void Window::initNative() {
// Attach to parent console if one exists // Attach to parent console if one exists
AttachConsole(ATTACH_PARENT_PROCESS); if (AttachConsole(ATTACH_PARENT_PROCESS)) {
// Redirect cin, cout and cerr to that console // Redirect cin, cout and cerr to that console
freopen("CONIN$", "w", stdin); freopen("CONIN$", "w", stdin);
freopen("CONOUT$", "w", stdout); freopen("CONOUT$", "w", stdout);
freopen("CONERR$", "w", stderr); freopen("CONERR$", "w", stderr);
setvbuf(stdin, nullptr, _IONBF, 0); setvbuf(stdin, nullptr, _IONBF, 0);
setvbuf(stdout, nullptr, _IONBF, 0); setvbuf(stdout, nullptr, _IONBF, 0);
setvbuf(stderr, nullptr, _IONBF, 0); setvbuf(stderr, nullptr, _IONBF, 0);
fmt::print("\n");
}
fmt::print("\n");
// Enable color format specifiers in console // Enable color format specifiers in console
{ {