File tree 1 file changed +3
-2
lines changed
1 file changed +3
-2
lines changed Original file line number Diff line number Diff line change @@ -7201,10 +7201,11 @@ mono_class_is_variant_compatible (MonoClass *klass, MonoClass *oklass)
7201
7201
int j ;
7202
7202
MonoType * * klass_argv , * * oklass_argv ;
7203
7203
MonoClass * klass_gtd = mono_class_get_generic_type_definition (klass );
7204
+ MonoClass * oklass_gtd = mono_class_get_generic_type_definition (oklass );
7204
7205
MonoGenericContainer * container = klass_gtd -> generic_container ;
7205
7206
7206
7207
/*Viable candidates are instances of the same generic interface*/
7207
- if (mono_class_get_generic_type_definition (oklass ) != klass_gtd )
7208
+ if (mono_class_get_generic_type_definition (oklass ) != klass_gtd || oklass == klass_gtd )
7208
7209
return FALSE;
7209
7210
7210
7211
klass_argv = & klass -> generic_class -> context .class_inst -> type_argv [0 ];
@@ -7344,7 +7345,7 @@ mono_class_is_variant_compatible_slow (MonoClass *klass, MonoClass *oklass)
7344
7345
MonoGenericContainer * container = klass_gtd -> generic_container ;
7345
7346
7346
7347
/*Viable candidates are instances of the same generic interface*/
7347
- if (mono_class_get_generic_type_definition (oklass ) != klass_gtd )
7348
+ if (mono_class_get_generic_type_definition (oklass ) != klass_gtd || oklass == klass_gtd )
7348
7349
return FALSE;
7349
7350
7350
7351
klass_argv = & klass -> generic_class -> context .class_inst -> type_argv [0 ];
You can’t perform that action at this time.
0 commit comments