aboutsummaryrefslogtreecommitdiffstats
path: root/src/pipe-tools/s6-ftrig-wait.c
diff options
context:
space:
mode:
authorLaurent Bercot <ska-skaware@skarnet.org>2026-03-18 01:57:01 +0000
committerLaurent Bercot <ska-skaware@skarnet.org>2026-03-18 01:57:01 +0000
commit24637cd3776cda5fd0a919ba9343ba86d82d3e04 (patch)
treedac9d66860d763fedc999ace6e1a5f37d3add229 /src/pipe-tools/s6-ftrig-wait.c
parent4cdcab0506e76666800d2bc111c602bb3154cc30 (diff)
downloads6-24637cd3776cda5fd0a919ba9343ba86d82d3e04.tar.gz
More fixes, ftrigr_string addition, doc update
Diffstat (limited to 'src/pipe-tools/s6-ftrig-wait.c')
-rw-r--r--src/pipe-tools/s6-ftrig-wait.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/pipe-tools/s6-ftrig-wait.c b/src/pipe-tools/s6-ftrig-wait.c
index 87b573d..e36fa2d 100644
--- a/src/pipe-tools/s6-ftrig-wait.c
+++ b/src/pipe-tools/s6-ftrig-wait.c
@@ -32,9 +32,9 @@ int main (int argc, char const *const *argv)
tain deadline ;
tain tto = TAIN_INFINITE_RELATIVE ;
ftrigr a = FTRIGR_ZERO ;
+ ftrigr_string fs ;
uint32_t id ;
unsigned int golc ;
- struct iovec v[2] = { [1] = { .iov_base = "\n", .iov_len = 1 } } ;
PROG = "s6-ftrig-wait" ;
golc = gol_main(argc, argv, 0, 0, rgola, GOLA_N, 0, wgola) ;
@@ -54,8 +54,10 @@ int main (int argc, char const *const *argv)
if (!ftrigr_startf_g(&a, &deadline)) strerr_diefu1sys(111, "ftrigr_startf") ;
if (!ftrigr_subscribe_g(&a, &id, 0, 0, argv[0], argv[1], &deadline))
strerr_diefu4sys(111, "subscribe to ", argv[0], " with regexp ", argv[1]) ;
- if (ftrigr_wait_or_g(&a, &id, 1, &v[0], &deadline) == -1)
+ if (ftrigr_wait_or_g(&a, &id, 1, &fs, &deadline) == -1)
strerr_diefu2sys((errno == ETIMEDOUT) ? 99 : 111, "match regexp on ", argv[1]) ;
+
+ struct iovec v[2] = { { .iov_base = fs.s, .iov_len = fs.len }, { .iov_base = "\n", .iov_len = 1 } } ;
if (allwritev(1, v, 2) < siovec_len(v, 2)) strerr_diefu1sys(111, "write to stdout") ;
_exit(0) ;
}