summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorРуслан Ижбулатов <lrn1986@gmail.com>2021-03-25 15:20:27 +0000
committerРуслан Ижбулатов <lrn1986@gmail.com>2021-03-25 15:20:49 +0000
commit03b574ae663153707a3e9c60ea75ce92a68446e6 (patch)
tree108588cf01bb25d435b5a838344778ce397f2e3d
parentf701d6c4975a526e41fd1f18082b5b3805310e7f (diff)
downloadglib-03b574ae663153707a3e9c60ea75ce92a68446e6.tar.gz
Don't leak a handle from _g_io_win32_get_module()
This call increments the DLL refcount by default and needs a flag to avoid that.
-rw-r--r--gio/giomodule.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gio/giomodule.c b/gio/giomodule.c
index ca1daf2a8..a2909a8ef 100644
--- a/gio/giomodule.c
+++ b/gio/giomodule.c
@@ -1120,7 +1120,8 @@ void *
_g_io_win32_get_module (void)
{
if (!gio_dll)
- GetModuleHandleExA (GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS,
+ GetModuleHandleExA (GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS |
+ GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT,
(const char *) _g_io_win32_get_module,
&gio_dll);
return gio_dll;