mirror of
https://github.com/fish-shell/fish-shell.git
synced 2026-06-06 00:41:15 -03:00
Use "internal" processes to write buffered output
This introduces "internal processes" which are backed by a pthread instead of a normal process. Internal processes are reaped using the topic machinery, plugging in neatly alongside the sigchld topic; this means that process_mark_finished_children() can wait for internal and external processes simultaneously. Initially internal processes replace the forked process that fish uses to write out the output of blocks and functions.
This commit is contained in:
@@ -5106,7 +5106,7 @@ static void test_topic_monitor() {
|
||||
constexpr auto t = topic_t::sigchld;
|
||||
do_test(gens[t] == 0);
|
||||
do_test(monitor.generation_for_topic(t) == 0);
|
||||
auto changed = monitor.check(&gens, {t}, false /* wait */);
|
||||
auto changed = monitor.check(&gens, topic_set_t{t}, false /* wait */);
|
||||
do_test(changed.none());
|
||||
do_test(gens[t] == 0);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user