[Mono-bugs] [Bug 27996][Cri] New - ExitThead() causes a crash when it's called from the main thread

bugzilla-daemon@rocky.ximian.com bugzilla-daemon@rocky.ximian.com
19 Jul 2002 13:02:22 -0000


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 martin@gnome.org.

http://bugzilla.ximian.com/show_bug.cgi?id=27996

--- shadow/27996	Fri Jul 19 09:02:22 2002
+++ shadow/27996.tmp.22259	Fri Jul 19 09:02:22 2002
@@ -0,0 +1,39 @@
+Bug#: 27996
+Product: Mono/Runtime
+Version: unspecified
+OS: 
+OS Details: 
+Status: NEW   
+Resolution: 
+Severity: 
+Priority: Critical
+Component: misc
+AssignedTo: mono-bugs@ximian.com                            
+ReportedBy: martin@gnome.org               
+QAContact: mono-bugs@ximian.com
+TargetMilestone: ---
+URL: 
+Cc: 
+Summary: ExitThead() causes a crash when it's called from the main thread
+
+If you call ExitThread() when there are no threads - for instance before 
+any threads have been created, this'll crash.
+
+I added a workaround for this, but the main problem still exists.
+
+As an example, try a simple
+
+	static void Main() {
+		throw new Exception ("Whatever");
+	}
+
+This is a critical bug since it makes the exception system almost 
+unusable:
+
+ExitThread() is called from arch_handle_exception() on an uncaught 
+exception - and if you get a SEGV there, it'll call 
+arch_handle_exception() again via the SIGSEGV handler.
+
+This means that you get hundreds of System.NullReferenceException's 
+floating over your termain so you can't read the program's output and the 
+real exception anymore.