diff options
Diffstat (limited to 'components/gfx/platform/mod.rs')
-rw-r--r-- | components/gfx/platform/mod.rs | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/components/gfx/platform/mod.rs b/components/gfx/platform/mod.rs index 729448c2586..fed55781486 100644 --- a/components/gfx/platform/mod.rs +++ b/components/gfx/platform/mod.rs @@ -9,7 +9,17 @@ pub use platform::freetype::{font, font_context, font_list, font_template}; 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 { +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; @@ -17,7 +27,7 @@ pub mod freetype { } #[cfg(target_os = "macos")] -pub mod macos { +mod macos { pub mod font; pub mod font_context; pub mod font_list; |