2010-05-07 Rodrigo Kumpera <rkumpera@novell.com>
authorRodrigo Kumpera <kumpera@gmail.com>
Fri, 7 May 2010 23:24:16 +0000 (23:24 -0000)
committerRodrigo Kumpera <kumpera@gmail.com>
Fri, 7 May 2010 23:24:16 +0000 (23:24 -0000)
* metadata-verify.c: MS doesn't mind duplicates in the
typeref table. Move it to full verification.

Fixes #600508.

svn path=/trunk/mono/; revision=156948

mono/metadata/ChangeLog
mono/metadata/metadata-verify.c

index 6b2624abebbbe213d85f9838a0318f0d297d5264..26228bb1d637a1e34c47f2c76e3f9ddbede6f3c2 100644 (file)
@@ -1,3 +1,10 @@
+2010-05-07 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * metadata-verify.c: MS doesn't mind duplicates in the
+       typeref table. Move it to full verification.
+
+       Fixes #600508.
+
 2010-05-07 Rodrigo Kumpera  <rkumpera@novell.com>
 
        * image.c (do_mono_image_load): Report verification
index 78a7a533d6489a8ad12a27d8c91addc7e521e069..625692c77732cfc5f2fc740bb54b52c77a0d57b2 100644 (file)
@@ -3681,11 +3681,15 @@ verify_typeref_table_global_constraints (VerifyContext *ctx)
 static void
 verify_tables_data_global_constraints (VerifyContext *ctx)
 {
-       verify_typeref_table_global_constraints (ctx);
-       CHECK_ERROR ();
        verify_typedef_table_global_constraints (ctx);
 }
-       
+
+static void
+verify_tables_data_global_constraints_full (VerifyContext *ctx)
+{
+       verify_typeref_table_global_constraints (ctx);
+}
+
 static void
 verify_tables_data (VerifyContext *ctx)
 {
@@ -3918,6 +3922,8 @@ mono_verifier_verify_full_table_data (MonoImage *image, GSList **error_list)
        verify_typespec_table_full (&ctx);
        CHECK_STATE ();
        verify_method_spec_table_full (&ctx);
+       CHECK_STATE ();
+       verify_tables_data_global_constraints_full (&ctx);
 
 cleanup:
        return cleanup_context (&ctx, error_list);