diff --git a/src/hostcalls.rs b/src/hostcalls.rs index 76c3513..a07fde8 100644 --- a/src/hostcalls.rs +++ b/src/hostcalls.rs @@ -21,6 +21,12 @@ extern "C" { fn proxy_log(level: LogLevel, message_data: *const u8, message_size: usize) -> Status; } +pub(crate) fn log_noresult(level: LogLevel, message: &str) { + unsafe { + let _ = proxy_log(level, message.as_ptr(), message.len()); + } +} + pub fn log(level: LogLevel, message: &str) -> Result<(), Status> { unsafe { match proxy_log(level, message.as_ptr(), message.len()) { diff --git a/src/logger.rs b/src/logger.rs index 050a356..3ea8b3a 100644 --- a/src/logger.rs +++ b/src/logger.rs @@ -26,7 +26,7 @@ pub(crate) fn set_log_level(level: LogLevel) { if !INITIALIZED.load(Ordering::Relaxed) { log::set_logger(&LOGGER).unwrap(); panic::set_hook(Box::new(|panic_info| { - hostcalls::log(LogLevel::Critical, &panic_info.to_string()).unwrap(); + hostcalls::log_noresult(LogLevel::Critical, &panic_info.to_string()); })); INITIALIZED.store(true, Ordering::Relaxed); }