rust/rhg/src/main.rs
changeset 49487 9f14126cfc4c
parent 49484 85f5d11c77dd
child 49506 44bc045a43ca
equal deleted inserted replaced
49486:e8481625c582 49487:9f14126cfc4c
   370     use_detailed_exit_code: bool,
   370     use_detailed_exit_code: bool,
   371 ) -> i32 {
   371 ) -> i32 {
   372     match result {
   372     match result {
   373         Ok(()) => exit_codes::OK,
   373         Ok(()) => exit_codes::OK,
   374         Err(CommandError::Abort {
   374         Err(CommandError::Abort {
   375             message: _,
   375             detailed_exit_code, ..
   376             detailed_exit_code,
       
   377         }) => {
   376         }) => {
   378             if use_detailed_exit_code {
   377             if use_detailed_exit_code {
   379                 *detailed_exit_code
   378                 *detailed_exit_code
   380             } else {
   379             } else {
   381                 exit_codes::ABORT
   380                 exit_codes::ABORT
   478     use_detailed_exit_code: bool,
   477     use_detailed_exit_code: bool,
   479 ) -> ! {
   478 ) -> ! {
   480     match &result {
   479     match &result {
   481         Ok(_) => {}
   480         Ok(_) => {}
   482         Err(CommandError::Unsuccessful) => {}
   481         Err(CommandError::Unsuccessful) => {}
   483         Err(CommandError::Abort {
   482         Err(CommandError::Abort { message, hint, .. }) => {
   484             message,
   483             // Ignore errors when writing to stderr, we’re already exiting
   485             detailed_exit_code: _,
   484             // with failure code so there’s not much more we can do.
   486         }) => {
       
   487             if !message.is_empty() {
   485             if !message.is_empty() {
   488                 // Ignore errors when writing to stderr, we’re already exiting
       
   489                 // with failure code so there’s not much more we can do.
       
   490                 let _ = ui.write_stderr(&format_bytes!(b"{}\n", message));
   486                 let _ = ui.write_stderr(&format_bytes!(b"{}\n", message));
       
   487             }
       
   488             if let Some(hint) = hint {
       
   489                 let _ = ui.write_stderr(&format_bytes!(b"({})\n", hint));
   491             }
   490             }
   492         }
   491         }
   493         Err(CommandError::UnsupportedFeature { message }) => {
   492         Err(CommandError::UnsupportedFeature { message }) => {
   494             match on_unsupported {
   493             match on_unsupported {
   495                 OnUnsupported::Abort => {
   494                 OnUnsupported::Abort => {