rendered paste bodyIndex: mono.cpp
===================================================================
--- mono.cpp (revision 80361)
+++ mono.cpp (working copy)
@@ -28,15 +28,22 @@
gboolean
vm_init ()
{
- const char *home = g_get_home_dir ();
gboolean result = FALSE;
- boot_assembly = g_build_path ("/", home, ".mozilla", "plugins", "moonlight.exe", NULL);
- mono_config_parse (NULL);
- moon_domain = mono_jit_init (boot_assembly);
- mono_debug_init (MONO_DEBUG_FORMAT_MONO);
- mono_debug_init_1 (moon_domain);
- moon_boot_assembly = mono_domain_assembly_open (moon_domain, boot_assembly);
+ /* grovel around looking for an existing app domain before we create a new one */
+ moon_domain = mono_get_root_domain ();
+
+ if (moon_domain == NULL) {
+ const char *home = g_get_home_dir ();
+
+ boot_assembly = g_build_path ("/", home, ".mozilla", "plugins", "moonlight.exe", NULL);
+ mono_config_parse (NULL);
+ moon_domain = mono_jit_init (boot_assembly);
+ mono_debug_init (MONO_DEBUG_FORMAT_MONO);
+ mono_debug_init_1 (moon_domain);
+ moon_boot_assembly = mono_domain_assembly_open (moon_domain, boot_assembly);
+ }
+
if (moon_boot_assembly){
char *argv [2];
Index: plugin-glue.cpp
===================================================================
--- plugin-glue.cpp (revision 80361)
+++ plugin-glue.cpp (working copy)
@@ -225,7 +225,6 @@
}
runtime_init ();
- TimeManager::Instance()->Start();
return NPERR_NO_ERROR;
}
@@ -237,6 +236,5 @@
// runtime_shutdown is broken at moment so let us just shutdown TimeManager,
// when fixed please uncomment above line and remove time manger shutdown.
- //runtime_shutdown ();
- TimeManager::Instance()->Shutdown ();
+ runtime_shutdown ();
}