From a58121741fdc07d2713a9bb5b224957d2e7ecfe6 Mon Sep 17 00:00:00 2001 From: Stephen Seo Date: Mon, 1 Aug 2022 14:30:22 +0900 Subject: [PATCH] Fix memory leak related to freetype, bump v0.3.3 --- Cargo.lock | 2 +- Cargo.toml | 2 +- README.md | 2 +- src/unicode_support/freetype.rs | 6 +++--- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 33876cc..a935c45 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1668,7 +1668,7 @@ dependencies = [ [[package]] name = "mpd_info_screen" -version = "0.3.2" +version = "0.3.3" dependencies = [ "bindgen", "freetype", diff --git a/Cargo.toml b/Cargo.toml index 91f1ca5..272c536 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "mpd_info_screen" -version = "0.3.2" +version = "0.3.3" edition = "2018" description = "Displays info on currently playing music from an MPD daemon" license = "MIT" diff --git a/README.md b/README.md index f778c20..11456d1 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,7 @@ installed already). # Usage - mpd_info_screen 0.3.2 + mpd_info_screen 0.3.3 USAGE: mpd_info_screen [FLAGS] [OPTIONS] [port] diff --git a/src/unicode_support/freetype.rs b/src/unicode_support/freetype.rs index 8e324c0..1bfe079 100644 --- a/src/unicode_support/freetype.rs +++ b/src/unicode_support/freetype.rs @@ -2,7 +2,7 @@ use std::path::Path; mod ffi { use freetype::freetype::{ - FT_Done_Face, FT_Done_Library, FT_Face, FT_FaceRec_, FT_Get_Char_Index, FT_Init_FreeType, + FT_Done_Face, FT_Done_FreeType, FT_Face, FT_FaceRec_, FT_Get_Char_Index, FT_Init_FreeType, FT_Library, FT_ModuleRec_, FT_Open_Args, FT_Open_Face, FT_Parameter_, FT_StreamRec_, FT_OPEN_PATHNAME, }; @@ -17,7 +17,7 @@ mod ffi { fn drop(&mut self) { if !self.library.is_null() { unsafe { - FT_Done_Library(self.library); + FT_Done_FreeType(self.library); } } } @@ -151,7 +151,7 @@ mod ffi { } pub fn font_has_char(c: char, font_path: &Path) -> Result { - let library = ffi::FTLibrary::new().ok_or(String::from("Failed to get FTLibrary"))?; + let library = ffi::FTLibrary::new().ok_or_else(|| String::from("Failed to get FTLibrary"))?; let mut args = ffi::FTOpenArgs::new_with_path(font_path); let faces = ffi::FTFaces::new(&library, &mut args)?;