You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 237a921
Browse filesBrowse the repository at this point in the historyBrowse files
fix(desktop): a tmux run starts only once its pane is tagged, and sign-out reaches runs of closed tabs
- A run's command now waits for its pane to be tagged as the run's before
it starts. Untagged, it never starts and its pane closes by itself, so no
pane is ever closed by an id a restarted tmux server might have handed to
the user. A short command can no longer finish before the tag exists.
- The run script is a file instead of a bash -c string. tmux hands its
command to sh -c, which expanded the counter and PIPESTATUS meant for
bash first, so tmux runs reported no exit code.
- A run whose Sim terminal closed while it kept going in tmux is still
stopped at sign-out and when Terminal is switched off.
- Retiring an install id either replaces it or removes it from disk, so a
retired id is never picked up again. A 409 whose new id cannot be saved
backs off instead of retrying at once.
- A failing approval notification no longer keeps the inbox read from
claiming its calls.
// Untagged, nothing could ever stop it safely later, so it does not get to run. The pane was
386
-
// created a moment ago by this call, so its id is still ours to close.
387
-
awaitrunTmux(['kill-pane','-t',pane],env)
406
+
// Untagged, nothing could stop it safely later, so it never starts: without the go file the
407
+
// wrapper exits by itself.
388
408
dispose()
389
409
return{
390
-
error: `tmux could not mark the command's pane, so it was closed straight away (${tagged.stderr.trim()||'no detail'}). It may have started; check before running it again.`,
410
+
error: `tmux could not mark the command's pane(${tagged.stderr.trim()||'no detail'}), so the command was not run.`,
391
411
}
392
412
}
413
+
try{
414
+
writeFileSync(goPath,'')
415
+
}catch(error){
416
+
dispose()
417
+
return{error: `The command could not be started: ${getErrorMessage(error)}`}
0 commit comments