diff --git a/src/sdl2/audio.rs b/src/sdl2/audio.rs index 8bd8b63c1b6..1ff2e00f626 100644 --- a/src/sdl2/audio.rs +++ b/src/sdl2/audio.rs @@ -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) diff --git a/src/sdl2/timer.rs b/src/sdl2/timer.rs index 4bb9a263ed1..62d12bef75a 100644 --- a/src/sdl2/timer.rs +++ b/src/sdl2/timer.rs @@ -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 }