diff options
-rw-r--r-- | helix-term/src/application.rs | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/helix-term/src/application.rs b/helix-term/src/application.rs index 3f911195..17c762da 100644 --- a/helix-term/src/application.rs +++ b/helix-term/src/application.rs @@ -273,11 +273,14 @@ impl Application { .. }) => { debugger.is_running = false; - let main = debugger - .threads() - .await - .ok() - .and_then(|threads| threads.get(0).cloned()); + let main = debugger.threads().await.ok().and_then(|threads| { + // Workaround for debugging Go tests. Main thread has * in beginning of its name + let mut main = threads.iter().find(|t| t.name.starts_with('*')).cloned(); + if main.is_none() { + main = threads.get(0).cloned(); + } + main + }); if let Some(main) = main { let (bt, _) = debugger.stack_trace(main.id).await.unwrap(); |