public Process OpenCoreFile(string core_file) { if ((debugger != null) || (main_process != null)) throw new TargetException (TargetError.AlreadyHaveTarget); Console.WriteLine ("Loading core file {0}", core_file); try { debugger = new Debugger (config); new InterpreterEventSink (this, debugger); Thread[] threads; current_process = main_process = debugger.OpenCoreFile ( session, core_file, out threads); current_thread = current_process.MainThread; return current_process; } catch (TargetException) { debugger.Dispose (); debugger = null; throw; } }