Exit qemu on panic

This commit is contained in:
Philipp Oppermann
2019-04-20 18:50:43 +02:00
parent 1559493802
commit 3ecf9a9b56

View File

@@ -29,12 +29,22 @@ fn test_runner(tests: &[&dyn Fn()]) {
}
/// This function is called on panic.
#[cfg(not(test))]
#[panic_handler]
fn panic(info: &PanicInfo) -> ! {
println!("{}", info);
loop {}
}
#[cfg(test)]
#[panic_handler]
fn panic(info: &PanicInfo) -> ! {
serial_println!("[failed]\n");
serial_println!("Error: {}\n", info);
unsafe { exit_qemu(QemuExitCode::Failed); }
loop {}
}
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
#[repr(u32)]
pub enum QemuExitCode {