Skip to content

agausmann/unwind_aborts

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

unwind_aborts

Prevent your panics from unwinding past FFI boundaries with this one simple trick!

Intended to be used in place of #[unwind(aborts)] until it is stabilized.

Usage

Add this to your [dependencies] in Cargo.toml:

unwind_aborts = "0.1.0"

Annotate your functions with #[unwind_aborts] to catch stack unwinding and abort the process instead:

use unwind_aborts::unwind_aborts; #[unwind_aborts] pub extern fn foo() { panic!("this is safe"); }

The example above is equivalent to:

pub extern fn foo() { let result = std::panic::catch_unwind(|| { panic!("this is safe"); }); match result { Ok(x) => x, Err(_) => std::process::abort(), } }

About

Prevent your panics from unwinding across an FFI boundary with this one simple trick!

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages