mirror of
https://github.com/koverstreet/bcachefs-tools.git
synced 2025-02-09 00:00:04 +03:00
fix: don't try to convert C command returns to u8
Fixes Rust panics if some C command (like fsck) returns a value bigger than 255. The process exit code will be mangled but what can we do, it's less confusing than a panic (that unfortunately doesn't print the return value). Signed-off-by: Thomas Mühlbacher <tmuehlbacher@posteo.net>
This commit is contained in:
parent
57cd58db1e
commit
b4db95b16e
@ -9,6 +9,7 @@ use std::{
|
||||
};
|
||||
|
||||
use bch_bindgen::c;
|
||||
use log::debug;
|
||||
|
||||
#[derive(Debug)]
|
||||
pub struct ErrnoError(pub errno::Errno);
|
||||
@ -110,6 +111,11 @@ fn main() -> ExitCode {
|
||||
"list" => commands::list(args[1..].to_vec()).report(),
|
||||
"mount" => commands::mount(args, symlink_cmd).report(),
|
||||
"subvolume" => commands::subvolume(args[1..].to_vec()).report(),
|
||||
_ => ExitCode::from(u8::try_from(handle_c_command(args, symlink_cmd)).unwrap()),
|
||||
_ => {
|
||||
let r = handle_c_command(args, symlink_cmd);
|
||||
|
||||
debug!("return code from C command: {r}");
|
||||
ExitCode::from(r as u8)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user