Author: martin
Date: 2006-04-03 12:11:43 -0400 (Mon, 03 Apr 2006)
New Revision: 58958

Modified:
   trunk/debugger/ChangeLog
   trunk/debugger/backends/Process.cs
   trunk/debugger/backends/ThreadManager.cs
   trunk/debugger/frontend/Interpreter.cs
Log:
2006-04-03  Martin Baulig  <[EMAIL PROTECTED]>

        * backends/Process.cs
        (Process.Initialize): Set `main_thread' and `main_engine' here.

        * backends/Debugger.cs
        (Debugger.Run): It's now safe to use `process.MainThread' on the
        returned Process immediately.



Modified: trunk/debugger/ChangeLog
===================================================================
--- trunk/debugger/ChangeLog    2006-04-03 16:00:22 UTC (rev 58957)
+++ trunk/debugger/ChangeLog    2006-04-03 16:11:43 UTC (rev 58958)
@@ -1,6 +1,20 @@
 2006-04-03  Martin Baulig  <[EMAIL PROTECTED]>
 
+       * backends/Process.cs
+       (Process.Initialize): Set `main_thread' and `main_engine' here.
+
+       * backends/Debugger.cs
+       (Debugger.Run): It's now safe to use `process.MainThread' on the
+       returned Process immediately.
+
+2006-04-03  Martin Baulig  <[EMAIL PROTECTED]>
+
        * frontend/Interpreter.cs
+       (Interpreter.start_event): Removed.
+
+2006-04-03  Martin Baulig  <[EMAIL PROTECTED]>
+
+       * frontend/Interpreter.cs
        (Interpreter.Threads): Removed; we don't keep a separate hash
        table here anymore, but use `Process.Threads' instead.
        (Interpreter.Processes): New public property.

Modified: trunk/debugger/backends/Process.cs
===================================================================
--- trunk/debugger/backends/Process.cs  2006-04-03 16:00:22 UTC (rev 58957)
+++ trunk/debugger/backends/Process.cs  2006-04-03 16:11:43 UTC (rev 58958)
@@ -196,11 +196,6 @@
                internal void ReachedMain (Inferior inferior, Thread thread,
                                           SingleSteppingEngine engine)
                {
-                       this.main_thread = thread;
-                       this.main_engine = engine;
-
-                       main_thread_group.AddThread (thread.ID);
-
                        manager.Debugger.OnProcessReachedMainEvent (this);
 
                        module_manager.UnLock ();
@@ -292,7 +287,11 @@
                                mono_manager = MonoThreadManager.Initialize (
                                        manager, inferior, start.PID != 0);
 
+                       this.main_thread = engine.Thread;
+                       this.main_engine = engine;
+
                        thread_hash.Add (engine.PID, engine.Thread);
+                       main_thread_group.AddThread (engine.Thread.ID);
 
                        if (start.PID != 0) {
                                int[] threads = inferior.GetThreads ();

Modified: trunk/debugger/backends/ThreadManager.cs
===================================================================
--- trunk/debugger/backends/ThreadManager.cs    2006-04-03 16:00:22 UTC (rev 
58957)
+++ trunk/debugger/backends/ThreadManager.cs    2006-04-03 16:11:43 UTC (rev 
58958)
@@ -384,8 +384,6 @@
                                        engine_hash.Add (sse.ID, sse);
                                        processes.Add (process);
 
-                                       backend.OnThreadCreatedEvent 
(sse.Thread);
-
                                        wait_event.Set ();
 
                                        command.Result = process;

Modified: trunk/debugger/frontend/Interpreter.cs
===================================================================
--- trunk/debugger/frontend/Interpreter.cs      2006-04-03 16:00:22 UTC (rev 
58957)
+++ trunk/debugger/frontend/Interpreter.cs      2006-04-03 16:11:43 UTC (rev 
58958)
@@ -36,10 +36,8 @@
 
                bool is_synchronous;
                bool is_interactive;
-               bool initialized;
                int exit_code = 0;
 
-               AutoResetEvent start_event;
                ManualResetEvent interrupt_event;
                Thread current_thread;
 
@@ -83,8 +81,6 @@
                        parser_names_by_language.Add ("native", "c#");
 
                        current_parser_name = "auto";
-
-                       start_event = new AutoResetEvent (false);
                }
 
                AppDomain debugger_domain;
@@ -321,7 +317,6 @@
 
                                main_process = debugger.Run (options);
 
-                               start_event.WaitOne ();
                                main_thread = main_process.MainThread;
                                CurrentThread = main_thread;
                                Wait (main_thread);
@@ -350,7 +345,6 @@
 
                                main_process = debugger.Attach (options, pid);
 
-                               start_event.WaitOne ();
                                main_thread = main_process.MainThread;
                                CurrentThread = main_thread;
                                Wait (main_thread);
@@ -416,7 +410,6 @@
 
                                session.InsertBreakpoints (main_thread);
 
-                               start_event.WaitOne ();
                                main_thread = process.MainThread;
                                CurrentThread = main_thread;
                                Wait (main_thread);
@@ -430,7 +423,7 @@
 
                protected void ThreadCreated (Thread thread)
                {
-                       if (initialized)
+                       if (!thread.IsDaemon)
                                Print ("New thread @{0}", thread.ID);
                }
 
@@ -456,12 +449,6 @@
                        interrupt_event.Reset ();
                }
 
-               protected void DebuggerInitialized ()
-               {
-                       initialized = true;
-                       start_event.Set ();
-               }
-
                public void ShowBreakpoints ()
                {
                        EventHandle[] events = session.Events;
@@ -531,8 +518,6 @@
                                main_thread = null;
                                main_process = null;
                        }
-
-                       initialized = false;
                }
 
                public Thread CurrentThread {
@@ -743,7 +728,6 @@
 
                        public void process_reached_main (Debugger debugger, 
Process process)
                        {
-                               interpreter.DebuggerInitialized ();
                        }
 
                        public void process_exited (Debugger debugger, Process 
process)

_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches

Reply via email to