patch 8.0.0801: terminal window title says "running" after job exits
Problem: The terminal window title sometimes still says "running" even
though the job has finished.
Solution: Also consider the job finished when the channel has been closed.
diff --git a/src/terminal.c b/src/terminal.c
index b68081f..d02e7f1 100644
--- a/src/terminal.c
+++ b/src/terminal.c
@@ -491,7 +491,11 @@
static int
term_job_running(term_T *term)
{
- return term->tl_job != NULL && term->tl_job->jv_status == JOB_STARTED;
+ /* Also consider the job finished when the channel is closed, to avoid a
+ * race condition when updating the title. */
+ return term->tl_job != NULL
+ && term->tl_job->jv_status == JOB_STARTED
+ && channel_is_open(term->tl_job->jv_channel);
}
/*