[Mono-bugs] [Bug 81691][Nor] New - SIGSEGV using Type.GetField when assembly containing type of field does not exist
bugzilla-daemon at bugzilla.ximian.com
bugzilla-daemon at bugzilla.ximian.com
Sun May 20 10:53:32 EDT 2007
Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.
Changed by gert.driesen at pandora.be.
http://bugzilla.ximian.com/show_bug.cgi?id=81691
--- shadow/81691 2007-05-20 10:53:32.000000000 -0400
+++ shadow/81691.tmp.19417 2007-05-20 10:53:32.000000000 -0400
@@ -0,0 +1,137 @@
+Bug#: 81691
+Product: Mono: Runtime
+Version: 1.2
+OS: All
+OS Details:
+Status: NEW
+Resolution:
+Severity:
+Priority: Normal
+Component: misc
+AssignedTo: mono-bugs at ximian.com
+ReportedBy: gert.driesen at pandora.be
+QAContact: mono-bugs at ximian.com
+TargetMilestone: ---
+URL:
+Cc:
+Summary: SIGSEGV using Type.GetField when assembly containing type of field does not exist
+
+When Type.GetField is invoked and the assembly in which the field's Type
+is located does not exist, then a SIGSEGV is reported.
+
+On MS, Type.GetField returns a valid FieldInfo and the FieldType appears
+to be lazy loaded.
+
+To reproduce:
+1. extract the attached gzipped tar archive.
+2. run 'make'.
+
+Expected result:
+
+Successfull execution.
+
+Actual result:
+
+** (test.exe:32370): WARNING **: The following assembly referenced
+from /home/gert/mono/gert/standalone/bugnew/libb.dll could not be loaded:
+ Assembly: liba (assemblyref_index=1)
+ Version: 0.0.0.0
+ Public Key: (none)
+The assembly was not found in the Global Assembly Cache, a path listed in
+the MONO_PATH environment variable, or in the location of the executing
+assembly (/home/gert/mono/gert/standalone/bugnew).
+
+
+** (test.exe:32370): WARNING **: Could not load file or assembly 'liba,
+Version=0.0.0.0, Culture=neutral' or one of its dependencies.
+Stacktrace:
+
+ at (wrapper managed-to-native) System.MonoType.GetField
+(string,System.Reflection.BindingFlags) <0x00004>
+ at (wrapper managed-to-native) System.MonoType.GetField
+(string,System.Reflection.BindingFlags) <0xffffffff>
+ at Program.Main () <0x00073>
+ at (wrapper runtime-invoke) System.Object.runtime_invoke_int
+(object,intptr,intptr,intptr) <0xffffffff>
+
+Native stacktrace:
+
+ mono [0x815a09e]
+ mono [0x81238f8]
+ [0xffffe440]
+ [0x40af927d]
+ [0x40aecbc4]
+ [0x40aec7cf]
+ mono(mono_runtime_exec_main+0x10e) [0x80ed1fe]
+ mono(mono_runtime_run_main+0x1b9) [0x80ed4e9]
+ mono(mono_main+0xe9e) [0x805a8ee]
+ mono [0x8059542]
+ /lib/tls/i686/cmov/libc.so.6(__libc_start_main+0xdc) [0x40123ebc]
+ mono [0x8059491]
+
+Debug info from gdb:
+
+Using host libthread_db library "/lib/tls/i686/cmov/libthread_db.so.1".
+[Thread debugging using libthread_db enabled]
+[New Thread 1076165344 (LWP 32370)]
+[New Thread 1086307216 (LWP 32372)]
+[New Thread 1079524240 (LWP 32371)]
+0xffffe410 in __kernel_vsyscall ()
+ 3 Thread 1079524240 (LWP 32371) 0xffffe410 in __kernel_vsyscall ()
+ 2 Thread 1086307216 (LWP 32372) 0xffffe410 in __kernel_vsyscall ()
+ 1 Thread 1076165344 (LWP 32370) 0xffffe410 in __kernel_vsyscall ()
+
+Thread 3 (Thread 1079524240 (LWP 32371)):
+#0 0xffffe410 in __kernel_vsyscall ()
+#1 0x400dc986 in ?? () from /lib/tls/i686/cmov/libpthread.so.0
+#2 0x08108b84 in collection_thread (unused=0x0) at collection.c:34
+#3 0x400d531b in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
+#4 0x401dd57e in clone () from /lib/tls/i686/cmov/libc.so.6
+
+Thread 2 (Thread 1086307216 (LWP 32372)):
+#0 0xffffe410 in __kernel_vsyscall ()
+#1 0x400d95c6 in pthread_cond_wait@@GLIBC_2.3.2 ()
+ from /lib/tls/i686/cmov/libpthread.so.0
+#2 0x080fc56f in timedwait_signal_poll_cond (cond=0x405db1dc,
+ mutex=0x405db1c4, timeout=0x0, alertable=0) at handles.c:1413
+#3 0x080fed8f in _wapi_handle_timedwait_signal_handle (handle=0x404,
+ timeout=0x0, alertable=0) at handles.c:1493
+#4 0x080fee0c in _wapi_handle_wait_signal_handle (handle=0x404,
+alertable=0)
+ at handles.c:1453
+#5 0x080fb7af in WaitForSingleObjectEx (handle=0x404, timeout=4294967295,
+ alertable=0) at wait.c:200
+#6 0x080c813a in finalizer_thread (unused=0x0) at gc.c:835
+#7 0x080e6bd4 in start_wrapper (data=0x823f4c0) at threads.c:318
+#8 0x0810a082 in thread_start_routine (args=0x4062d3c0) at threads.c:253
+#9 0x0811bbb5 in GC_start_routine (arg=0x22f40) at pthread_support.c:1362
+#10 0x400d531b in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
+#11 0x401dd57e in clone () from /lib/tls/i686/cmov/libc.so.6
+
+Thread 1 (Thread 1076165344 (LWP 32370)):
+#0 0xffffe410 in __kernel_vsyscall ()
+#1 0x401d63d1 in select () from /lib/tls/i686/cmov/libc.so.6
+#2 0x4008f4a0 in g_spawn_sync () from /usr/lib/libglib-2.0.so.0
+#3 0x4008f86c in g_spawn_command_line_sync () from /usr/lib/libglib-
+2.0.so.0
+#4 0x0815a139 in mono_handle_native_sigsegv (signal=11, ctx=0xbffe892c)
+ at mini-exceptions.c:1065
+#5 0x081238f8 in sigsegv_signal_handler (_dummy=11, info=0xbffe88ac,
+ context=0xbffe892c) at mini.c:11154
+#6 <signal handler called>
+#7 0x08165ca6 in ves_icall_Type_GetField (type=0x2b840, name=0x43fc0,
+ bflags=<value optimized out>) at icall.c:3075
+#8 0x40af927d in ?? ()
+#9 0x0002b840 in ?? ()
+#10 0x00043fc0 in ?? ()
+#11 0x00000028 in ?? ()
+#12 0x08218090 in ?? ()
+#13 0x08218090 in ?? ()
+#14 0x00000000 in ?? ()
+#0 0xffffe410 in __kernel_vsyscall ()
+
+=================================================================
+Got a SIGSEGV while executing native code. This usually indicates
+a fatal error in the mono runtime or one of the native libraries
+used by your application.
+=================================================================
More information about the mono-bugs
mailing list