Skip to content

Commit f01eb59

Browse files
committed
Update win32-utf8.c
Reflects mgkuhn's comment.
1 parent fb38865 commit f01eb59

File tree

1 file changed

+9
-6
lines changed

1 file changed

+9
-6
lines changed

contrib/win32/win32compat/win32-utf8.c

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
UINT g_previous_codepage = 0;
1212

1313
void
14-
mresetlocale(void);
14+
mrestorelocale(void);
1515

1616
int
1717
vfmprintf(FILE *stream, const char *fmt, va_list ap)
@@ -100,19 +100,22 @@ asmprintf(char **outp, size_t sz, int *written, const char *fmt, ...)
100100
void
101101
msetlocale(void)
102102
{
103+
// save previous codepage
104+
g_previous_codepage = GetConsoleOutputCP();
105+
103106
// allow console output of unicode characters
104-
g_previous_codepage = SetConsoleOutputCP(CP_UTF8);
107+
SetConsoleOutputCP(CP_UTF8);
105108

106-
// register reset function at exit
107-
atexit(mresetlocale);
109+
// register a restore function at exit
110+
atexit(mrestorelocale);
108111
}
109112

110113
void
111-
mresetlocale(void)
114+
mrestorelocale(void)
112115
{
113116
if( 0 != g_previous_codepage )
114117
{
115-
// restore console output codepage for previous one
118+
// restore console output codepage to previous one
116119
SetConsoleOutputCP(g_previous_codepage);
117120
}
118121
}

0 commit comments

Comments
 (0)