@@ -89,15 +89,7 @@ impl<'b> Controller<'b> {
8989
9090 let writer = output_type.handle()?;
9191 let mut no_errors: bool = true;
92−
9392 let stderr = io::stderr();
94− let print_error = |error: &Error, write: &mut dyn Write| {
95− if attached_to_pager {
96− handle_error(error, write);
97− } else {
98− handle_error(error, &mut stderr.lock());
99− }
100− };
10193
10294 for (index, input) in inputs.into_iter().enumerate() {
10395 let identifier = stdout_identifier.as_ref();
@@ -109,7 +101,11 @@ impl<'b> Controller<'b> {
109101 self.print_input(input, writer, DummyStdin, identifier, is_first)
110102 };
111103 if let Err(error) = result {
112− print_error(&error, writer);
104+ if attached_to_pager {
105+ handle_error(&error, writer);
106+ } else {
107+ handle_error(&error, &mut stderr.lock());
108+ }
113109 no_errors = false;
114110 }
115111 }