Don't allow zero index tokens on IL streams.
authorRodrigo Kumpera <kumpera@gmail.com>
Mon, 29 Nov 2010 21:58:08 +0000 (19:58 -0200)
committerRodrigo Kumpera <kumpera@gmail.com>
Mon, 29 Nov 2010 21:59:00 +0000 (19:59 -0200)
* verify.c (token_bounds_check): Check if token index is zero.

Fixes #651682

mono/metadata/verify.c

index a787c1af108fa6081ffe977d9957f689275ead52..1ef1a64d70a311164ce9fb41d56d9e9b5265f05a 100644 (file)
@@ -366,7 +366,7 @@ token_bounds_check (MonoImage *image, guint32 token)
 {
        if (image->dynamic)
                return mono_reflection_is_valid_dynamic_token ((MonoDynamicImage*)image, token);
-       return image->tables [mono_metadata_token_table (token)].rows >= mono_metadata_token_index (token);
+       return image->tables [mono_metadata_token_table (token)].rows >= mono_metadata_token_index (token) && mono_metadata_token_index (token) > 0;
 }
 
 static MonoType *