public static MonoThreadManager Initialize(Process process, Inferior inferior, TargetAddress info, bool attach) { MonoDebuggerInfo debugger_info = MonoDebuggerInfo.Create(inferior, info); if (debugger_info == null) { return(null); } if (attach) { if (!debugger_info.CheckRuntimeVersion(81, 2)) { Report.Error("The Mono runtime of the target application is too old to support attaching,\n" + "attaching as a native application."); return(null); } if ((debugger_info.RuntimeFlags & 1) != 1) { Report.Error("The Mono runtime of the target application does not support attaching,\n" + "attaching as a native application."); return(null); } } return(new MonoThreadManager(process, inferior, debugger_info)); }