aboutsummaryrefslogtreecommitdiffstats
path: root/src/x11/headless.rs
diff options
context:
space:
mode:
authortomaka <pierre.krieger1708@gmail.com>2015-04-03 07:52:12 +0200
committertomaka <pierre.krieger1708@gmail.com>2015-04-03 07:52:12 +0200
commit93f4581c08b1b25852527223a6f3608870532a87 (patch)
tree5323fa00d2ea700dd64dfd2dff36ac169ccac163 /src/x11/headless.rs
parent6c990ae48866e6110600aadcb3a0d8850deab42b (diff)
parentd33c138164d069f025439f97920771f1f8c7775e (diff)
downloadglutin-93f4581c08b1b25852527223a6f3608870532a87.tar.gz
glutin-93f4581c08b1b25852527223a6f3608870532a87.zip
Merge pull request #348 from tomaka/rustup
Rustup
Diffstat (limited to 'src/x11/headless.rs')
-rw-r--r--src/x11/headless.rs12
1 files changed, 3 insertions, 9 deletions
diff --git a/src/x11/headless.rs b/src/x11/headless.rs
index e23dfa7..291f04d 100644
--- a/src/x11/headless.rs
+++ b/src/x11/headless.rs
@@ -5,12 +5,6 @@ use libc;
use std::{mem, ptr};
use super::ffi;
-fn with_c_str<F, T>(s: &str, f: F) -> T where F: FnOnce(*const libc::c_char) -> T {
- use std::ffi::CString;
- let c_str = CString::from_slice(s.as_bytes());
- f(c_str.as_ptr())
-}
-
pub struct HeadlessContext {
context: ffi::OSMesaContext,
buffer: Vec<u32>,
@@ -53,9 +47,9 @@ impl HeadlessContext {
pub fn get_proc_address(&self, addr: &str) -> *const () {
unsafe {
- with_c_str(addr, |s| {
- ffi::OSMesaGetProcAddress(mem::transmute(s)) as *const ()
- })
+ use std::ffi::CString;
+ let c_str = CString::new(addr.as_bytes().to_vec()).unwrap();
+ ffi::OSMesaGetProcAddress(mem::transmute(c_str.as_ptr())) as *const ()
}
}