[Mono-bugs] [Bug 553450] [verifier] SIGSEGV in do_invoke_method (verify.c) on a bad assembly

bugzilla_noreply at novell.com bugzilla_noreply at novell.com
Tue Nov 24 10:56:19 EST 2009


http://bugzilla.novell.com/show_bug.cgi?id=553450

http://bugzilla.novell.com/show_bug.cgi?id=553450#c1


Sebastien Pouliot <spouliot at novell.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|[verifier] SIGSEGV in       |[verifier] SIGSEGV in
                   |mono_method_verify on a bad |do_invoke_method (verify.c)
                   |assembly                    |on a bad assembly

--- Comment #1 from Sebastien Pouliot <spouliot at novell.com> 2009-11-24 15:56:16 UTC ---
This is also a case where mono_method_get_signature (and also
mono_method_get_signature_full) returned a NULL signature. Adjusting bug
summary.

This patch fix the crash.

Index: mono/metadata/verify.c
===================================================================
--- mono/metadata/verify.c    (revision 146811)
+++ mono/metadata/verify.c    (working copy)
@@ -3363,6 +3363,11 @@
     if (!(sig = mono_method_get_signature_full (method, ctx->image,
method_token, ctx->generic_context)))
         sig = mono_method_get_signature (method, ctx->image, method_token);

+    if (!sig) {
+        ADD_VERIFY_ERROR (ctx, g_strdup_printf ("Could not resolve the
signature of method token 0x%08x at 0x%04x", method_token, ctx->ip_offset));
+        return;
+    }
+
     param_count = sig->param_count + sig->hasthis;
     if (!check_underflow (ctx, param_count))
         return;

-- 
Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.


More information about the mono-bugs mailing list