All pastes #579787 Raw Edit

Miscellany

public text v1 · immutable
·published 2007-06-20 20:46 UTC
rendered paste body
Index: 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 ();
 }