Unverified Commit d110d96b authored by Marcel Raad's avatar Marcel Raad
Browse files

tool_cb_wrt: fix bad-function-cast warning

Commit f5bc578f reintroduced the
warning fixed in commit 2f5f31bb.
Extend fhnd's scope and reuse that variable instead of calling
_get_osfhandle a second time to fix the warning again.

Closes https://github.com/curl/curl/pull/3718
parent e102ba7a
Loading
Loading
Loading
Loading
+3 −5
Original line number Diff line number Diff line
@@ -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,