From 1377e3d1e7dd311024c6933e1734d8492147e0dc Mon Sep 17 00:00:00 2001 From: Tor Lillqvist Date: Wed, 1 Jan 2003 23:18:44 +0000 Subject: [PATCH] Check the C stdout and stderr streams for validity, instead of what 2003-01-01 Tor Lillqvist * glib/gmessages.c (ensure_stdout_valid, ensure_stderr_valid): Check the C stdout and stderr streams for validity, instead of what GetStdHandle() returns. --- ChangeLog | 2 ++ ChangeLog.pre-2-10 | 2 ++ ChangeLog.pre-2-12 | 2 ++ ChangeLog.pre-2-4 | 2 ++ ChangeLog.pre-2-6 | 2 ++ ChangeLog.pre-2-8 | 2 ++ glib/gmessages.c | 7 ++++--- 7 files changed, 16 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 128d56a..9d9a885 100644 --- a/ChangeLog +++ b/ChangeLog @@ -3,6 +3,8 @@ * glib/gmessages.c (ensure_stderr_valid): New function, parallel to ensure_stdout_valid(). #defined as empty on Unix. Move the alloc_console_called static flag inside these two functions. + (ensure_stdout_valid, ensure_stderr_valid): Check the C stdout and + stderr streams for validity, instead of what GetStdHandle() returns. (mklevel_prefix): Do use either stderr or stdout on Windows, too. Otherwise g_warning() messages (that are just warnings, by definition) will get mixed with proper stdout output. Noticed in diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 128d56a..9d9a885 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -3,6 +3,8 @@ * glib/gmessages.c (ensure_stderr_valid): New function, parallel to ensure_stdout_valid(). #defined as empty on Unix. Move the alloc_console_called static flag inside these two functions. + (ensure_stdout_valid, ensure_stderr_valid): Check the C stdout and + stderr streams for validity, instead of what GetStdHandle() returns. (mklevel_prefix): Do use either stderr or stdout on Windows, too. Otherwise g_warning() messages (that are just warnings, by definition) will get mixed with proper stdout output. Noticed in diff --git a/ChangeLog.pre-2-12 b/ChangeLog.pre-2-12 index 128d56a..9d9a885 100644 --- a/ChangeLog.pre-2-12 +++ b/ChangeLog.pre-2-12 @@ -3,6 +3,8 @@ * glib/gmessages.c (ensure_stderr_valid): New function, parallel to ensure_stdout_valid(). #defined as empty on Unix. Move the alloc_console_called static flag inside these two functions. + (ensure_stdout_valid, ensure_stderr_valid): Check the C stdout and + stderr streams for validity, instead of what GetStdHandle() returns. (mklevel_prefix): Do use either stderr or stdout on Windows, too. Otherwise g_warning() messages (that are just warnings, by definition) will get mixed with proper stdout output. Noticed in diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index 128d56a..9d9a885 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -3,6 +3,8 @@ * glib/gmessages.c (ensure_stderr_valid): New function, parallel to ensure_stdout_valid(). #defined as empty on Unix. Move the alloc_console_called static flag inside these two functions. + (ensure_stdout_valid, ensure_stderr_valid): Check the C stdout and + stderr streams for validity, instead of what GetStdHandle() returns. (mklevel_prefix): Do use either stderr or stdout on Windows, too. Otherwise g_warning() messages (that are just warnings, by definition) will get mixed with proper stdout output. Noticed in diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 128d56a..9d9a885 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -3,6 +3,8 @@ * glib/gmessages.c (ensure_stderr_valid): New function, parallel to ensure_stdout_valid(). #defined as empty on Unix. Move the alloc_console_called static flag inside these two functions. + (ensure_stdout_valid, ensure_stderr_valid): Check the C stdout and + stderr streams for validity, instead of what GetStdHandle() returns. (mklevel_prefix): Do use either stderr or stdout on Windows, too. Otherwise g_warning() messages (that are just warnings, by definition) will get mixed with proper stdout output. Noticed in diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 128d56a..9d9a885 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -3,6 +3,8 @@ * glib/gmessages.c (ensure_stderr_valid): New function, parallel to ensure_stdout_valid(). #defined as empty on Unix. Move the alloc_console_called static flag inside these two functions. + (ensure_stdout_valid, ensure_stderr_valid): Check the C stdout and + stderr streams for validity, instead of what GetStdHandle() returns. (mklevel_prefix): Do use either stderr or stdout on Windows, too. Otherwise g_warning() messages (that are just warnings, by definition) will get mixed with proper stdout output. Noticed in diff --git a/glib/gmessages.c b/glib/gmessages.c index d2b8efb..4743d45 100644 --- a/glib/gmessages.c +++ b/glib/gmessages.c @@ -46,6 +46,7 @@ #include "gprintfint.h" #ifdef G_OS_WIN32 +#include typedef FILE* GFileDescriptor; #else typedef gint GFileDescriptor; @@ -129,7 +130,7 @@ ensure_stdout_valid (void) if (!alloc_console_called) { - handle = GetStdHandle (STD_OUTPUT_HANDLE); + handle = (HANDLE) _get_osfhandle (fileno (stdout)); if (handle == INVALID_HANDLE_VALUE) { @@ -151,8 +152,8 @@ ensure_stderr_valid (void) if (!alloc_console_called) { - handle = GetStdHandle (STD_ERROR_HANDLE); - + handle = (HANDLE) _get_osfhandle (fileno (stderr)); + if (handle == INVALID_HANDLE_VALUE) { AllocConsole (); -- 2.7.4