[FFmpeg-cvslog] avutil/log: fix detecting console mode on Win32

Marton Balint git at videolan.org
Sun Feb 9 21:48:04 EET 2020


ffmpeg | branch: master | Marton Balint <cus at passwd.hu> | Wed Jan 29 00:46:01 2020 +0100| [1b34c0690f0c159ea528c2ccd6c0811e450896b6] | committer: Marton Balint

avutil/log: fix detecting console mode on Win32

A redirected stderr can still have a valid handle.

Signed-off-by: Marton Balint <cus at passwd.hu>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=1b34c0690f0c159ea528c2ccd6c0811e450896b6
---

 libavutil/log.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/libavutil/log.c b/libavutil/log.c
index 64950016e8..6374050770 100644
--- a/libavutil/log.c
+++ b/libavutil/log.c
@@ -124,7 +124,10 @@ static void check_color_terminal(void)
 {
 #if defined(_WIN32) && HAVE_SETCONSOLETEXTATTRIBUTE && HAVE_GETSTDHANDLE
     CONSOLE_SCREEN_BUFFER_INFO con_info;
+    DWORD dummy;
     con = GetStdHandle(STD_ERROR_HANDLE);
+    if (con != INVALID_HANDLE_VALUE && !GetConsoleMode(con, &dummy))
+        con = INVALID_HANDLE_VALUE;
     use_color = (con != INVALID_HANDLE_VALUE) && !getenv("AV_LOG_FORCE_NOCOLOR");
     if (use_color) {
         GetConsoleScreenBufferInfo(con, &con_info);



More information about the ffmpeg-cvslog mailing list