diff --git a/hllapi.cbp b/hllapi.cbp
index 7ec7bbb..06d7a5d 100644
--- a/hllapi.cbp
+++ b/hllapi.cbp
@@ -63,9 +63,6 @@
-
-
-
diff --git a/src/ipc3270c/linux/globals.h b/src/ipc3270c/linux/globals.h
index ed4ccbc..aa4caef 100644
--- a/src/ipc3270c/linux/globals.h
+++ b/src/ipc3270c/linux/globals.h
@@ -34,6 +34,7 @@
#define PW3270_DBUS_GLOBALS_H_INCLUDED 1
#include
+ #include
#include
#include
@@ -41,6 +42,13 @@
#include
#include
+#if ! GLIB_CHECK_VERSION(2,44,0)
+
+ G_GNUC_INTERNAL void hllapi_autoptr_cleanup_generic_gfree(void *p);
+ #define g_autofree __attribute__((cleanup(v3270_autoptr_cleanup_generic_gfree)))
+
+#endif // ! GLIB(2,44,0)
+
//
// Disabling warning on unused-function defined in dbus-glib-bindings.h
// warning: 'org_freedesktop_DBus_reload_config' defined but not used [-Wunused-function] ...
diff --git a/src/ipc3270c/linux/main.c b/src/ipc3270c/linux/main.c
index 9cb2bbc..e92eb0e 100644
--- a/src/ipc3270c/linux/main.c
+++ b/src/ipc3270c/linux/main.c
@@ -41,6 +41,7 @@
#include
#include "service.h"
+#include "globals.h"
#include "dbus-glue.h"
#include
@@ -175,5 +176,12 @@
return lib3270_get_default_session_handle();
}
-
+#if ! GLIB_CHECK_VERSION(2,44,0)
+// Reference: https://github.com/ImageMagick/glib/blob/master/glib/glib-autocleanups.h
+void hllapi_autoptr_cleanup_generic_gfree(void *p)
+{
+ void **pp = (void**)p;
+ g_free (*pp);
+}
+#endif // ! GLIB(2,44,0)
--
libgit2 0.21.2