diff options
Diffstat (limited to 'src/tool_cb_wrt.c')
-rw-r--r-- | src/tool_cb_wrt.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/src/tool_cb_wrt.c b/src/tool_cb_wrt.c index 1944f16c2..f403ab34c 100644 --- a/src/tool_cb_wrt.c +++ b/src/tool_cb_wrt.c @@ -81,6 +81,7 @@ size_t tool_write_cb(char *buffer, size_t sz, size_t nmemb, void *userdata) bool is_tty = config->global->isatty; #ifdef WIN32 CONSOLE_SCREEN_BUFFER_INFO console_info; + intptr_t fhnd; #endif /* @@ -159,13 +160,12 @@ size_t tool_write_cb(char *buffer, size_t sz, size_t nmemb, void *userdata) } #ifdef _WIN32 + fhnd = _get_osfhandle(fileno(outs->stream)); if(isatty(fileno(outs->stream)) && - GetConsoleScreenBufferInfo( - (HANDLE)_get_osfhandle(fileno(outs->stream)), &console_info)) { + GetConsoleScreenBufferInfo((HANDLE)fhnd, &console_info)) { DWORD in_len = (DWORD)(sz * nmemb); wchar_t* wc_buf; DWORD wc_len; - intptr_t fhnd; /* calculate buffer size for wide characters */ wc_len = MultiByteToWideChar(CP_UTF8, 0, buffer, in_len, NULL, 0); @@ -180,8 +180,6 @@ size_t tool_write_cb(char *buffer, size_t sz, size_t nmemb, void *userdata) return failure; } - fhnd = _get_osfhandle(fileno(outs->stream)); - if(!WriteConsoleW( (HANDLE) fhnd, wc_buf, |