aboutsummaryrefslogtreecommitdiff
path: root/src/nix/main.cc
diff options
context:
space:
mode:
authorAlois Wohlschlager <alois1@gmx-topmail.de>2024-08-21 17:28:42 +0200
committerAlois Wohlschlager <alois1@gmx-topmail.de>2024-08-21 17:28:42 +0200
commitde552c42cb304ff320bc042a37b2f46ecd20c63b (patch)
tree825892fdf6f62b97b3636d7d1f824f0089278c7f /src/nix/main.cc
parente38410799b5b78b2fc2b0c9e4b1dc0dfc5801097 (diff)
Stop the logger in legacy commands again
Commit 0dd1d8ca1cdccfc620644a7f690ed35bcd2d1e74 included an accidental revert of 1461e6cdda06f7f461114cce5b415f6d50381311 (actually slightly worse), leading to the progress bar not being stopped properly when a legacy command was invoked with `--log-format bar` (or similar options that show a progress bar). Move the progress bar stopping code to its proper place again to fix this regression. Change-Id: I676333da096d5990b717a387924bb988c9b73fab
Diffstat (limited to 'src/nix/main.cc')
-rw-r--r--src/nix/main.cc4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/nix/main.cc b/src/nix/main.cc
index e84e4f310..97f4b4a63 100644
--- a/src/nix/main.cc
+++ b/src/nix/main.cc
@@ -353,6 +353,9 @@ void mainWrapped(int argc, char * * argv)
argv++; argc--;
}
+ // Clean up the progress bar if shown using --log-format in a legacy command too.
+ // Otherwise, this is a harmless no-op.
+ Finally f([] { logger->pause(); });
{
auto legacy = (*RegisterLegacyCommand::commands)[programName];
if (legacy) return legacy(argc, argv);
@@ -361,7 +364,6 @@ void mainWrapped(int argc, char * * argv)
evalSettings.pureEval = true;
setLogFormat(LogFormat::bar);
- Finally f([] { logger->pause(); });
settings.verboseBuild = false;
// FIXME: stop messing about with log verbosity depending on if it is interactive use
if (isatty(STDERR_FILENO)) {