diff options
author | Ms2ger <Ms2ger@gmail.com> | 2016-06-05 11:58:02 +0200 |
---|---|---|
committer | Ms2ger <Ms2ger@gmail.com> | 2016-06-05 12:31:52 +0200 |
commit | 2767133ff309e3f9c61eccd7e5444e5235ed4c9a (patch) | |
tree | 4fa5ad64b9bb5fd36f7e70e422f5db9ec99e62c6 /components/gfx/platform/mod.rs | |
parent | 24546b4da2f410a560e982206d4c5401577f1f9c (diff) | |
download | servo-2767133ff309e3f9c61eccd7e5444e5235ed4c9a.tar.gz servo-2767133ff309e3f9c61eccd7e5444e5235ed4c9a.zip |
Move c_str_to_string to its only consumer.
Diffstat (limited to 'components/gfx/platform/mod.rs')
-rw-r--r-- | components/gfx/platform/mod.rs | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/components/gfx/platform/mod.rs b/components/gfx/platform/mod.rs index 729448c2586..17aaf36ae27 100644 --- a/components/gfx/platform/mod.rs +++ b/components/gfx/platform/mod.rs @@ -10,6 +10,16 @@ pub use platform::macos::{font, font_context, font_list, font_template}; #[cfg(any(target_os = "linux", target_os = "android", target_os = "windows"))] pub mod freetype { + use libc::c_char; + use std::ffi::CStr; + use std::str; + + /// Creates a String from the given null-terminated buffer. + /// Panics if the buffer does not contain UTF-8. + unsafe fn c_str_to_string(s: *const c_char) -> String { + str::from_utf8(CStr::from_ptr(s).to_bytes()).unwrap().to_owned() + } + pub mod font; pub mod font_context; pub mod font_list; |