Commit a614316
committed
Take the terminal back before retrying a shell command in cmd2's group
When a terminal pipeline exits before a shell command can join its
group, do_shell() retries in cmd2's own group. The terminal was still
lent to the dead pipeline, so the command stopped with SIGTTIN on its
first terminal read and the wait for it never returned. End the lend
before retrying.1 parent 06608b0 commit a614316
2 files changed
Lines changed: 26 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
5317 | 5317 | | |
5318 | 5318 | | |
5319 | 5319 | | |
| 5320 | + | |
| 5321 | + | |
| 5322 | + | |
| 5323 | + | |
5320 | 5324 | | |
5321 | 5325 | | |
5322 | 5326 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
438 | 438 | | |
439 | 439 | | |
440 | 440 | | |
441 | | - | |
442 | | - | |
| 441 | + | |
| 442 | + | |
| 443 | + | |
| 444 | + | |
| 445 | + | |
| 446 | + | |
| 447 | + | |
| 448 | + | |
| 449 | + | |
| 450 | + | |
| 451 | + | |
| 452 | + | |
| 453 | + | |
| 454 | + | |
| 455 | + | |
| 456 | + | |
| 457 | + | |
| 458 | + | |
| 459 | + | |
| 460 | + | |
| 461 | + | |
443 | 462 | | |
444 | 463 | | |
445 | 464 | | |
446 | 465 | | |
447 | 466 | | |
| 467 | + | |
448 | 468 | | |
449 | 469 | | |
450 | 470 | | |
| |||
0 commit comments