diff --git a/src/sdl2/sdl.rs b/src/sdl2/sdl.rs index 2126eeaa..428f8c33 100644 --- a/src/sdl2/sdl.rs +++ b/src/sdl2/sdl.rs @@ -1,5 +1,6 @@ use std::mem; use std::str; +use std::c_str::CString; // Setup linking for all targets. #[cfg(target_os="macos")] @@ -113,9 +114,8 @@ pub fn was_inited(flags: InitFlag) -> InitFlag { pub fn get_error() -> String { unsafe { - let cstr = ll::SDL_GetError(); - - str::raw::from_c_str(mem::transmute_copy(&cstr)) + let cstr = CString::new(ll::SDL_GetError(), false); + cstr.as_str().to_strbuf() } }