From 1b5c989202e083e371dead85ae6318194c3fccdb Mon Sep 17 00:00:00 2001 From: Gisle Vanem Date: Fri, 15 May 2020 10:59:39 +0000 Subject: [PATCH] Use `_get_oshandle()` and `g_win32_output_stream_new()` instead since `g_win32_output_stream_new_from_fd()` is private in Gio. It's normally not exported unless `GLIB_STATIC_COMPILATION` is effective. PS. Why would i not be called `GIO_STATIC_COMPILATION` for Gio .c-files? --- gi-dump-types.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/gi-dump-types.c b/gi-dump-types.c index bac32f2b6..8dae9c027 100644 --- a/gi-dump-types.c +++ b/gi-dump-types.c @@ -1,6 +1,7 @@ /* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ #include "gdump.c" #ifdef G_OS_WIN32 + #include /* For _get_osfhandle() */ #include #else #include @@ -15,7 +16,10 @@ main (int argc, GModule *self; #if defined(G_OS_WIN32) - Stdout = g_win32_output_stream_new (1, FALSE); + HANDLE *hnd = (HANDLE) _get_osfhandle (1); + + g_return_val_if_fail (hnd && hnd != INVALID_HANDLE_VALUE, 1); + Stdout = g_win32_output_stream_new (hnd, FALSE); #else Stdout = g_unix_output_stream_new (1, FALSE); #endif