16517N/Adiff -rup ../i386/glib-2.20.1/gmodule/gmodule-dl.c glib-2.20.1/gmodule/gmodule-dl.c
16517N/A--- ../i386/glib-2.20.1/gmodule/gmodule-dl.c 2009-04-01 01:04:20.000000000 +0200
16517N/A+++ glib-2.20.1/gmodule/gmodule-dl.c 2009-05-14 16:39:16.692377272 +0200
16517N/A@@ -95,9 +95,15 @@ _g_module_open (const gchar *file_name,
9605N/A gboolean bind_local)
9605N/A {
9605N/A gpointer handle;
9605N/A+
9605N/A+ #if defined(sun) && defined(__SVR4)
9605N/A+ /* Always use RTLD_LAZY on Solaris otherwise all relocations are
9605N/A+ performed immediately in all dynamic dependencies */
9605N/A+ bind_lazy = 1;
9605N/A+ #endif
9605N/A
9605N/A handle = dlopen (file_name,
16517N/A- (bind_local ? 0 : RTLD_GLOBAL) | (bind_lazy ? RTLD_LAZY : RTLD_NOW));
16517N/A+ (bind_local ? 0 : RTLD_GLOBAL) | (bind_lazy ? RTLD_LAZY | RTLD_FIRST: RTLD_NOW));
16517N/A if (!handle)
16517N/A g_module_set_error (fetch_dlerror (TRUE));
16517N/A