2 unstable releases
0.2.0 | Oct 22, 2024 |
---|---|
0.1.0 | Oct 22, 2024 |
#406 in Debugging
352 downloads per month
6.5MB
121K
SLoC
Contains (Mach-o exe, 705KB) dump_syms_dwarf_data, (autotools obfuscated code, 325KB) third_party/breakpad/configure, (DOS exe, 145KB) dump_syms.exe, (DOS exe, 245KB) symupload.exe, (DOS exe, 85KB) dump_syms_regtest64.exe, (Windows DLL, 52KB) pe_only_symbol_test.dll and 4 more.
breakpad.rs
breakpad.rs
is a Rust crate that enables the use of Breakpad in Rust applications. When a crash occurs, it generates a minidump and notifies related information through a designated delegate.
Example
struct Delegate;
impl breakpad_rs::ExceptionHandlerDelegate for Delegate {
fn did_write_minidump(&self, working_path: String, minidump_id: String) {
log::debug!("[did_write_minidump] working_path={working_path} minidump_id={minidump_id}");
}
fn get_working_path(&self) -> String {
log::debug!("[get_working_path] return=.");
String::from(".")
}
fn should_write_minidump(&self) -> bool {
log::debug!("[should_write_minidump] return=true");
true
}
}
fn main() {
env_logger::init();
let _breakpad = breakpad_rs::Breakpad::new(Some(Box::new(Delegate)));
unsafe {
let null: *mut u8 = std::ptr::null_mut();
*null = 42;
}
}
References
Dependencies
~2.7–7.5MB
~143K SLoC