|
|
@ -64,11 +64,22 @@ pub extern "win64" fn uefi_start(_image: uefi::Handle, table: SystemTable<Boot>) |
|
|
|
match result { |
|
|
|
Ok(file) => { |
|
|
|
let mut file = file.unwrap(); |
|
|
|
|
|
|
|
// TODO: Don't panic here
|
|
|
|
let size = file.read(&mut buf).unwrap().unwrap(); |
|
|
|
// TODO: Don't panic here too
|
|
|
|
config = from_slice(&buf[..size]).unwrap(); |
|
|
|
let result = file.read(&mut buf); |
|
|
|
match result { |
|
|
|
Ok(size) => { |
|
|
|
let size = size.unwrap(); |
|
|
|
if let Ok(c) = from_slice::<Configuration>(&buf[..size]) { |
|
|
|
config = c; |
|
|
|
} else { |
|
|
|
error!("Failed to parse configuration file"); |
|
|
|
info!("Using default configuration instead"); |
|
|
|
} |
|
|
|
} |
|
|
|
Err(_) => { |
|
|
|
error!("Failed to read configuration, file is too large"); |
|
|
|
info!("Using default configuration instead"); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
Err(_) => { |
|
|
|
warn!("\\EFI\\COONBOOT\\boot.json not found, using default configuration"); |
|
|
|