[Mono-bugs] [Bug 651287] New: [verifier] SIGSEGV in mono_class_is_assignable_from
bugzilla_noreply at novell.com
bugzilla_noreply at novell.com
Thu Nov 4 08:29:28 EDT 2010
https://bugzilla.novell.com/show_bug.cgi?id=651287
https://bugzilla.novell.com/show_bug.cgi?id=651287#c0
Summary: [verifier] SIGSEGV in mono_class_is_assignable_from
Classification: Mono
Product: Mono: Runtime
Version: SVN
Platform: x86
OS/Version: openSUSE 11.3
Status: NEW
Severity: Major
Priority: P5 - None
Component: verifier
AssignedTo: rkumpera at novell.com
ReportedBy: spouliot at novell.com
QAContact: mono-bugs at lists.ximian.com
Found By: ---
Blocker: ---
Created an attachment (id=398580)
--> (http://bugzilla.novell.com/attachment.cgi?id=398580)
assembly to reproduce the crash
A sigsegv occurs inside the mono_class_has_parent when both arguments are the
same. In this case idepth is identical and when it's zero (test case attached)
then a sigsegv occurs when accessing the supertypes array.
#define mono_class_has_parent(klass,parent) (((klass)->idepth >=
(parent)->idepth) && ((klass)->supertypes [(parent)->idepth - 1] == (parent)))
gdb --args pedump --verify all bin/System.Xml.sigsegv.5995.dll
Program received signal SIGSEGV, Segmentation fault.
0x08067b64 in mono_class_is_assignable_from (klass=0x82a0ec4, oklass=0x82a0ec4)
at class.c:7291
7291 return mono_class_has_parent (oklass, klass);
(gdb) bt
#0 0x08067b64 in mono_class_is_assignable_from (klass=0x82a0ec4,
oklass=0x82a0ec4) at class.c:7291
#1 0x08108fc1 in verify_type_compatibility_full (ctx=0xbfffeb4c,
target=0x82a0f44, candidate=0x82a0f44, strict=0) at verify.c:2111
#2 0x08109671 in verify_stack_type_compatibility_full (ctx=0xbfffeb4c,
type=0x82a0f44, stack=0x829faf0, drop_byref=0, valuetype_must_be_boxed=0)
at verify.c:2290
#3 0x081096a6 in verify_stack_type_compatibility (ctx=0xbfffeb4c,
type=0x82a0f44, stack=0x829faf0) at verify.c:2296
#4 0x0810bcaa in do_ret (ctx=0xbfffeb4c) at verify.c:2874
#5 0x08116ae1 in mono_method_verify (method=0x82a4e6c, level=135) at
verify.c:4893
#6 0x080508a2 in dump_verify_info (image=0x8293180, flags=135) at pedump.c:369
#7 0x0805167c in main (argc=4, argv=0xbffff054) at pedump.c:735
(gdb) p oklass
$1 = (MonoClass *) 0x82a0ec4
(gdb) p klass
$2 = (MonoClass *) 0x82a0ec4
(gdb) p klass->idepth
$3 = 0
(gdb) p klass->supertypes
$4 = (MonoClass **) 0x0
(gdb) p klass->name
$5 = 0xb7b4c0a0 "ReadState"
(gdb) p klass->name_space
$6 = 0xb7b4b3f5 "System.Xml"
--
Configure bugmail: https://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