From 230f30d3e3f690ea6773553e6a61ece104f2782e Mon Sep 17 00:00:00 2001 From: Chris Toshok Date: Sat, 2 May 2009 23:50:20 +0000 Subject: [PATCH] 2009-05-02 Chris Toshok * plugin-proxy.cpp (load): add RTLD_GLOBAL to real_plugin, otherwise we can't call mono_config_parse_memory from the plugin loader (since it doesn't link to libmono directly). svn path=/branches/moon/1.9.0/moon/; revision=133415 --- plugin/ChangeLog | 6 ++++++ plugin/plugin-proxy.cpp | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/plugin/ChangeLog b/plugin/ChangeLog index 74666649ea..69d8215a8b 100644 --- a/plugin/ChangeLog +++ b/plugin/ChangeLog @@ -1,3 +1,9 @@ +2009-05-02 Chris Toshok + + * plugin-proxy.cpp (load): add RTLD_GLOBAL to real_plugin, + otherwise we can't call mono_config_parse_memory from the plugin + loader (since it doesn't link to libmono directly). + 2009-05-02 Rusty Howell * plugin-proxy.cpp: Detect which libmoonloader we are (xpi or sys) diff --git a/plugin/plugin-proxy.cpp b/plugin/plugin-proxy.cpp index c564c6dfd1..525fb798c1 100644 --- a/plugin/plugin-proxy.cpp +++ b/plugin/plugin-proxy.cpp @@ -124,7 +124,7 @@ load (void) } } - void *real_plugin = dlopen (plugin_path, RTLD_LAZY); + void *real_plugin = dlopen (plugin_path, RTLD_LAZY | RTLD_GLOBAL); // Must dllmap moonplugin, otherwise it doesn't know where to get it char* plugin_config = g_strdup_printf("",plugin_path);