[vlc-commits] Freetype: cosmetics, cleaning and comments
Jean-Baptiste Kempf
git at videolan.org
Sun Oct 25 17:32:31 CET 2015
vlc | branch: master | Jean-Baptiste Kempf <jb at videolan.org> | Sun Oct 25 17:29:24 2015 +0100| [984e48cc436580043769f905d22829d4b8d99462] | committer: Jean-Baptiste Kempf
Freetype: cosmetics, cleaning and comments
Notably in Close()
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=984e48cc436580043769f905d22829d4b8d99462
---
modules/text_renderer/freetype.c | 59 ++++++++++++--------------------------
1 file changed, 19 insertions(+), 40 deletions(-)
diff --git a/modules/text_renderer/freetype.c b/modules/text_renderer/freetype.c
index 575601b..d1ecf78 100644
--- a/modules/text_renderer/freetype.c
+++ b/modules/text_renderer/freetype.c
@@ -1185,6 +1185,7 @@ static int Create( vlc_object_t *p_this )
if( !p_sys )
return VLC_ENOMEM;
+ /* Init Freetype and its stroker */
if( FT_Init_FreeType( &p_sys->p_library ) )
{
msg_Err( p_filter, "Failed to initialize FreeType" );
@@ -1198,15 +1199,11 @@ static int Create( vlc_object_t *p_this )
p_sys->p_stroker = NULL;
}
- p_sys->pp_font_attachments = NULL;
- p_sys->i_font_attachments = 0;
- p_sys->p_families = NULL;
-
+ /* Dictionnaries for fonts and families */
vlc_dictionary_init( &p_sys->face_map, 50 );
vlc_dictionary_init( &p_sys->family_map, 50 );
vlc_dictionary_init( &p_sys->fallback_map, 20 );
- p_sys->i_fallback_counter = 0;
p_sys->i_scale = 100;
/* default style to apply to uncomplete segmeents styles */
@@ -1230,12 +1227,12 @@ static int Create( vlc_object_t *p_this )
*/
double f_outline_thickness = var_InheritInteger( p_filter, "freetype-outline-thickness" ) / 100.0;
- f_outline_thickness = VLC_CLIP( f_outline_thickness, 0.0, 0.5 );
- float f_shadow_angle = var_InheritFloat( p_filter, "freetype-shadow-angle" );
- float f_shadow_distance = var_InheritFloat( p_filter, "freetype-shadow-distance" );
- f_shadow_distance = VLC_CLIP( f_shadow_distance, 0, 1 );
- p_sys->f_shadow_vector_x = f_shadow_distance * cosf((float)(2. * M_PI) * f_shadow_angle / 360);
- p_sys->f_shadow_vector_y = f_shadow_distance * sinf((float)(2. * M_PI) * f_shadow_angle / 360);
+ f_outline_thickness = VLC_CLIP( f_outline_thickness, 0.0, 0.5 );
+ float f_shadow_angle = var_InheritFloat( p_filter, "freetype-shadow-angle" );
+ float f_shadow_distance = var_InheritFloat( p_filter, "freetype-shadow-distance" );
+ f_shadow_distance = VLC_CLIP( f_shadow_distance, 0, 1 );
+ p_sys->f_shadow_vector_x = f_shadow_distance * cosf((float)(2. * M_PI) * f_shadow_angle / 360);
+ p_sys->f_shadow_vector_y = f_shadow_distance * sinf((float)(2. * M_PI) * f_shadow_angle / 360);
/* Set default psz_fontname */
if( !p_sys->p_default_style->psz_fontname || !*p_sys->p_default_style->psz_fontname )
@@ -1306,29 +1303,7 @@ static int Create( vlc_object_t *p_this )
return VLC_SUCCESS;
error:
- text_style_Delete( p_sys->p_default_style );
- text_style_Delete( p_sys->p_forced_style );
-
- vlc_dictionary_clear( &p_sys->fallback_map, FreeFamilies, p_filter );
- vlc_dictionary_clear( &p_sys->face_map, FreeFace, p_filter );
- vlc_dictionary_clear( &p_sys->family_map, NULL, NULL );
- if( p_sys->p_families )
- FreeFamiliesAndFonts( p_sys->p_families );
-
- if( p_sys->pp_font_attachments )
- {
- for( int k = 0; k < p_sys->i_font_attachments; k++ )
- vlc_input_attachment_Delete( p_sys->pp_font_attachments[k] );
-
- free( p_sys->pp_font_attachments );
- }
-
- if( p_sys->p_stroker )
- FT_Stroker_Done( p_sys->p_stroker );
-
- FT_Done_FreeType( p_sys->p_library );
-
- free( p_sys );
+ Destroy( VLC_OBJECT(p_filter) );
return VLC_EGENERIC;
}
@@ -1357,12 +1332,7 @@ static void Destroy( vlc_object_t *p_this )
DumpDictionary( p_filter, &p_sys->fallback_map, true, -1 );
#endif
- vlc_dictionary_clear( &p_sys->fallback_map, FreeFamilies, p_filter );
- vlc_dictionary_clear( &p_sys->face_map, FreeFace, p_filter );
- vlc_dictionary_clear( &p_sys->family_map, NULL, NULL );
- if( p_sys->p_families )
- FreeFamiliesAndFonts( p_sys->p_families );
-
+ /* Attachments */
if( p_sys->pp_font_attachments )
{
for( int k = 0; k < p_sys->i_font_attachments; k++ )
@@ -1371,9 +1341,18 @@ static void Destroy( vlc_object_t *p_this )
free( p_sys->pp_font_attachments );
}
+ /* Text styles */
text_style_Delete( p_sys->p_default_style );
text_style_Delete( p_sys->p_forced_style );
+ /* Fonts dicts */
+ vlc_dictionary_clear( &p_sys->fallback_map, FreeFamilies, p_filter );
+ vlc_dictionary_clear( &p_sys->face_map, FreeFace, p_filter );
+ vlc_dictionary_clear( &p_sys->family_map, NULL, NULL );
+ if( p_sys->p_families )
+ FreeFamiliesAndFonts( p_sys->p_families );
+
+ /* Freetype */
if( p_sys->p_stroker )
FT_Stroker_Done( p_sys->p_stroker );
More information about the vlc-commits
mailing list