[Mono-bugs] [Bug 80302][Maj] New - corrupted double-linked list on Process.ShellExecute

bugzilla-daemon at bugzilla.ximian.com bugzilla-daemon at bugzilla.ximian.com
Mon Dec 18 08:43:40 EST 2006


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 dna at informatik.uni-kiel.de.

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

--- shadow/80302	2006-12-18 08:43:40.000000000 -0500
+++ shadow/80302.tmp.12246	2006-12-18 08:43:40.000000000 -0500
@@ -0,0 +1,76 @@
+Bug#: 80302
+Product: Mono: Runtime
+Version: unspecified
+OS: GNU/Linux [Other]
+OS Details: Ubuntu 6.10
+Status: NEW   
+Resolution: 
+Severity: Unknown
+Priority: Major
+Component: JIT
+AssignedTo: lupus at ximian.com                            
+ReportedBy: dna at informatik.uni-kiel.de               
+QAContact: mono-bugs at ximian.com
+TargetMilestone: ---
+URL: 
+Cc: 
+Summary: corrupted double-linked list on Process.ShellExecute
+
+Description of Problem:
+
+I try to implement SWF.Application.Restart() with following code:
+
+StringBuilder argsBuilder = new StringBuilder();
+string[] args = Environment.GetCommandLineArgs();
+for(int i = 1; i < args.Length;i++)
+{
+	argsBuilder.Append(string.Format("{0} ", args[i]));
+}
+            
+ProcessStartInfo procInfo = Process.GetCurrentProcess().StartInfo;
+procInfo.Arguments = argsBuilder.ToString();
+procInfo.FileName = Application.ExecutablePath;
+Application.Exit();
+Process.Start(procInfo);
+
+This code works well on .NET 2.0 but crashed on mono svn r69654.
+
+Exception:
+[mono] ~/Debug @ mono RestartTest.exe test1 test2
+Unimplemented: Control::set_AutoSize(bool)
+Unimplemented: Control::set_AutoSize(bool)
+Stacktrace:
+
+  at (wrapper managed-to-native)
+System.Diagnostics.Process.ShellExecuteEx_internal
+(System.Diagnostics.ProcessStartInfo,System.Diagnostics.Process/ProcInfo&)
+<0x00004>
+  at (wrapper managed-to-native)
+System.Diagnostics.Process.ShellExecuteEx_internal
+(System.Diagnostics.ProcessStartInfo,System.Diagnostics.Process/ProcInfo&)
+<0xffffffff>
+  at System.Diagnostics.Process.Start_shell
+(System.Diagnostics.ProcessStartInfo,System.Diagnostics.Process) <0x00096>
+  at System.Diagnostics.Process.Start_common
+(System.Diagnostics.ProcessStartInfo,System.Diagnostics.Process) <0x0006e>
+  at System.Diagnostics.Process.Start (System.Diagnostics.ProcessStartInfo)
+<0x00040>
+  at RestartTest.Form1..ctor () <0x001d8>
+  at (wrapper remoting-invoke-with-check) RestartTest.Form1..ctor ()
+<0xffffffff>
+  at RestartTest.Program.Main () <0x00025>
+  at (wrapper runtime-invoke) System.Object.runtime_invoke_void
+(object,intptr,intptr,intptr) <0xffffffff>
+
+Native stacktrace:
+
+*** glibc detected *** mono: corrupted double-linked list: 0xb7ead158 ***
+
+
+How often does this happen? 
+every time
+
+Additional Information:
+
+Maybe the approach to implement Restart() in this way is completly wrong,
+but mono shouldn't crash.


More information about the mono-bugs mailing list