File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -242,18 +242,13 @@ impl Write for MultiWriter {
242242 let mode = self . output_error_mode . clone ( ) ;
243243 let mut errors = 0 ;
244244 self . writers . retain_mut ( |writer| {
245- let result = writer. write_all ( buf) ;
246- match result {
247- Err ( f) => {
248- if let Err ( e) = process_error ( mode. as_ref ( ) , f, writer, & mut errors) {
249- if aborted. is_none ( ) {
250- aborted = Some ( e) ;
251- }
252- }
253- false
254- }
255- _ => true ,
256- }
245+ writer
246+ . write_all ( buf)
247+ . map_err ( |f| {
248+ let _ = process_error ( mode. as_ref ( ) , f, writer, & mut errors)
249+ . map_err ( |e| aborted. get_or_insert ( e) ) ;
250+ } )
251+ . is_ok ( )
257252 } ) ;
258253 self . ignored_errors += errors;
259254 if let Some ( e) = aborted {
@@ -273,18 +268,13 @@ impl Write for MultiWriter {
273268 let mode = self . output_error_mode . clone ( ) ;
274269 let mut errors = 0 ;
275270 self . writers . retain_mut ( |writer| {
276- let result = writer. flush ( ) ;
277- match result {
278- Err ( f) => {
279- if let Err ( e) = process_error ( mode. as_ref ( ) , f, writer, & mut errors) {
280- if aborted. is_none ( ) {
281- aborted = Some ( e) ;
282- }
283- }
284- false
285- }
286- _ => true ,
287- }
271+ writer
272+ . flush ( )
273+ . map_err ( |f| {
274+ let _ = process_error ( mode. as_ref ( ) , f, writer, & mut errors)
275+ . map_err ( |e| aborted. get_or_insert ( e) ) ;
276+ } )
277+ . is_ok ( )
288278 } ) ;
289279 self . ignored_errors += errors;
290280 if let Some ( e) = aborted {
You can’t perform that action at this time.
0 commit comments