Merge pull request #83 from jcmoyer/closure-borrow

Use &mut closure to satisfy the borrow checker
This commit is contained in:
Tony Aldridge
2014-04-25 09:14:41 +01:00
2 changed files with 2 additions and 2 deletions
+1 -1
View File
@@ -209,7 +209,7 @@ pub struct AudioSpec<'a > {
extern "C" fn c_audio_callback(userdata: *c_void, stream: *uint8_t, len: c_int) {
unsafe {
let f : &|&mut [u8]| = cast::transmute(userdata);
let f : &mut |&mut [u8]| = cast::transmute(userdata);
// FIXME: lifetime error in calling
//slice::raw::mut_buf_as_slice(stream as *mut u8, len as uint, *f)
+1 -1
View File
@@ -82,6 +82,6 @@ impl<'a> Drop for Timer<'a> {
}
extern "C" fn c_timer_callback(_interval: uint32_t, param: *c_void) -> uint32_t {
let f : &|| -> uint = unsafe { cast::transmute(param) };
let f : &mut || -> uint = unsafe { cast::transmute(param) };
(*f)() as uint32_t
}