From e3c3d443584b629803a73ad66e0e298943c7f201 Mon Sep 17 00:00:00 2001 From: akbash Date: Wed, 19 Aug 2026 20:39:24 +0300 Subject: fix(cli): exit quietly when output pipes close (#2996) refs #2994 Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com> --- src/cli.rs | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'src/cli.rs') diff --git a/src/cli.rs b/src/cli.rs index ac97edc5..b432528d 100644 --- a/src/cli.rs +++ b/src/cli.rs @@ -8,6 +8,20 @@ use crate::api::schema::{ ReadSource, Request, SplitDirection, }; +macro_rules! print { + ($($arg:tt)*) => {{ + crate::platform::begin_cli_output(); + std::print!($($arg)*); + }}; +} + +macro_rules! println { + ($($arg:tt)*) => {{ + crate::platform::begin_cli_output(); + std::println!($($arg)*); + }}; +} + mod agent; mod api; mod completion; @@ -194,6 +208,7 @@ fn channel_set(args: &[String]) -> std::io::Result { ChannelSetInstallAction::RunSelfUpdate => {} } + crate::platform::end_cli_output(); if let Err(err) = crate::update::self_update(crate::update::SelfUpdateOptions::default()) { eprintln!("update failed: {err}"); eprintln!("Run `herdr update` to retry."); -- cgit v1.2.3