[loader-error] mono_metadata_parse_method_signature is no longer used by the runtime...
authorRodrigo Kumpera <kumpera@gmail.com>
Sun, 25 Oct 2015 20:07:02 +0000 (16:07 -0400)
committerRodrigo Kumpera <kumpera@gmail.com>
Thu, 29 Oct 2015 06:25:05 +0000 (02:25 -0400)
mono/metadata/metadata.c

index 4b56402b6ad4e7db3a544383a67aa59beaf225c5..6c61e196dc5943eb28525b8b36a3d8f166c87032 100644 (file)
@@ -2104,13 +2104,16 @@ mono_metadata_parse_method_signature_full (MonoImage *m, MonoGenericContainer *c
 MonoMethodSignature *
 mono_metadata_parse_method_signature (MonoImage *m, int def, const char *ptr, const char **rptr)
 {
+       /*
+        * This function MUST NOT be called by runtime code as it does error handling incorrectly.
+        * Use mono_metadata_parse_method_signature_full instead.
+        * It's ok to asser on failure as we no longer use it.
+        */
        MonoError error;
        MonoMethodSignature *ret;
        ret = mono_metadata_parse_method_signature_full (m, NULL, def, ptr, rptr, &error);
-       if (!ret) {
-               mono_loader_set_error_from_mono_error (&error);
-               mono_error_cleanup (&error); /*FIXME don't swallow the error message*/
-       }
+       g_assert (mono_error_ok (&error));
+
        return ret;
 }