aboutsummaryrefslogtreecommitdiff
path: root/src/tool_cb_wrt.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/tool_cb_wrt.c')
-rw-r--r--src/tool_cb_wrt.c8
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,