Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'bundles/org.eclipse.equinox.executable/library/gtk/eclipseGtkInit.c')
-rw-r--r--bundles/org.eclipse.equinox.executable/library/gtk/eclipseGtkInit.c16
1 files changed, 11 insertions, 5 deletions
diff --git a/bundles/org.eclipse.equinox.executable/library/gtk/eclipseGtkInit.c b/bundles/org.eclipse.equinox.executable/library/gtk/eclipseGtkInit.c
index f5617382a..787f73395 100644
--- a/bundles/org.eclipse.equinox.executable/library/gtk/eclipseGtkInit.c
+++ b/bundles/org.eclipse.equinox.executable/library/gtk/eclipseGtkInit.c
@@ -92,11 +92,17 @@ static int loadGtkSymbols( void * library, FN_TABLE * table) {
}
int loadGtk() {
- void * objLib = dlopen(GOBJ_LIB, RTLD_LAZY);
- void * gdkLib = dlopen(GDK_LIB, RTLD_LAZY);
- void * pixLib = dlopen(PIXBUF_LIB, RTLD_LAZY);
- void * gtkLib = dlopen(GTK_LIB, RTLD_LAZY);
- void * x11Lib = dlopen(X11_LIB, RTLD_LAZY);
+#ifdef AIX
+#define DLFLAGS RTLD_LAZY | RTLD_MEMBER
+#else
+#define DLFLAGS RTLD_LAZY
+#endif
+
+ void * objLib = dlopen(GOBJ_LIB, DLFLAGS);
+ void * gdkLib = dlopen(GDK_LIB, DLFLAGS);
+ void * pixLib = dlopen(PIXBUF_LIB, DLFLAGS);
+ void * gtkLib = dlopen(GTK_LIB, DLFLAGS);
+ void * x11Lib = dlopen(X11_LIB, DLFLAGS);
/* initialize ptr struct to 0's */
memset(&gtk, 0, sizeof(struct GTK_PTRS));

Back to the top