internal SingleSteppingEngine GetEngineByTID(Inferior inferior, long tid)
{
foreach (SingleSteppingEngine engine in thread_hash.Values) {
if (engine.TID == tid)
return engine;
}
if (thread_db == null) {
Report.Error ("Failed to initialize thread_db on {0}: {1}",
start.CommandLine, start);
return null;
}
SingleSteppingEngine result = null;
thread_db.GetThreadInfo (inferior, delegate (int t_lwp, long t_tid) {
if (tid != t_tid)
return;
result = (SingleSteppingEngine) thread_hash [t_lwp];
});
if (result == null)
Report.Error ("Cannot find thread {0:x} in {1}",
tid, start.CommandLine);
return result;
}