2009-07-30 Mark Probst <mark.probst@gmail.com>
[mono.git] / mono / metadata / appdomain.c
index 0451dee78ab4ac86deb540017c5c9edafdc93e82..f90562f88f19f5af4ae9300608abf883640ac59b 100644 (file)
@@ -72,7 +72,7 @@
  * Changes which are already detected at runtime, like the addition
  * of icalls, do not require an increment.
  */
-#define MONO_CORLIB_VERSION 76
+#define MONO_CORLIB_VERSION 79
 
 typedef struct
 {
@@ -818,6 +818,9 @@ mono_try_assembly_resolve (MonoDomain *domain, MonoString *fname, gboolean refon
        MonoBoolean isrefonly;
        gpointer params [2];
 
+       if (mono_runtime_get_no_exec ())
+               return NULL;
+
        g_assert (domain != NULL && fname != NULL);
 
        klass = domain->domain->mbr.obj.vtable->klass;
@@ -1999,7 +2002,7 @@ deregister_reflection_info_roots (MonoDomain *domain)
                MonoAssembly *assembly = list->data;
                MonoImage *image = assembly->image;
                int i;
-
+               /*No need to take the image lock here since dynamic images are appdomain bound and at this point the mutator is gone.*/
                if (image->dynamic && image->name_cache)
                        g_hash_table_foreach (image->name_cache, deregister_reflection_info_roots_name_space, image);
                for (i = 0; i < image->module_count; ++i) {