diff options
author | Uoti Urpala <uau@mplayer2.org> | 2011-08-08 05:59:23 +0300 |
---|---|---|
committer | Uoti Urpala <uau@mplayer2.org> | 2011-08-08 05:59:23 +0300 |
commit | 9920d6465068cdef068eddba4cf51e75d89b65ba (patch) | |
tree | f7a58ee6ab523e9d8ce0643d61098b90b9363901 /sub | |
parent | d843c9ca3844c36abbe77b12cb6ebfede5589126 (diff) | |
download | mpv-9920d6465068cdef068eddba4cf51e75d89b65ba.tar.bz2 mpv-9920d6465068cdef068eddba4cf51e75d89b65ba.tar.xz |
cleanup: move global ass_force_reload to struct osd_state
Diffstat (limited to 'sub')
-rw-r--r-- | sub/ass_mp.c | 19 | ||||
-rw-r--r-- | sub/ass_mp.h | 5 | ||||
-rw-r--r-- | sub/sub.h | 2 |
3 files changed, 12 insertions, 14 deletions
diff --git a/sub/ass_mp.c b/sub/ass_mp.c index 9a7b89a1ed..94c17b83f0 100644 --- a/sub/ass_mp.c +++ b/sub/ass_mp.c @@ -316,16 +316,13 @@ ASS_Library *mp_ass_init(void) return priv; } -int ass_force_reload = 0; // flag set if global ass-related settings were changed - -ASS_Image *mp_ass_render_frame(ASS_Renderer *priv, ASS_Track *track, - long long now, int *detect_change) +void mp_ass_reload_options(ASS_Renderer *priv, struct MPOpts *opts, + bool *need_reload) { - if (ass_force_reload) { - ass_set_margins(priv, ass_top_margin, ass_bottom_margin, 0, 0); - ass_set_use_margins(priv, ass_use_margins); - ass_set_font_scale(priv, ass_font_scale); - ass_force_reload = 0; - } - return ass_render_frame(priv, track, now, detect_change); + if (!*need_reload) + return; + ass_set_margins(priv, ass_top_margin, ass_bottom_margin, 0, 0); + ass_set_use_margins(priv, ass_use_margins); + ass_set_font_scale(priv, ass_font_scale); + *need_reload = false; } diff --git a/sub/ass_mp.h b/sub/ass_mp.h index 0e60b71103..02c55c8a12 100644 --- a/sub/ass_mp.h +++ b/sub/ass_mp.h @@ -52,9 +52,8 @@ void mp_ass_configure(ASS_Renderer *priv, int w, int h, bool unscaled); void mp_ass_configure_fonts(ASS_Renderer *priv); ASS_Library *mp_ass_init(void); -extern int ass_force_reload; -ASS_Image *mp_ass_render_frame(ASS_Renderer *priv, ASS_Track *track, - long long now, int *detect_change); +void mp_ass_reload_options(ASS_Renderer *priv, struct MPOpts *opts, + bool *need_reload); #else /* CONFIG_ASS */ @@ -70,6 +70,8 @@ typedef struct mp_osd_obj_s { struct osd_state { struct ass_library *ass_library; + // flag to signal reinitialization due to ass-related option changes + bool ass_force_reload; unsigned char osd_text[128]; struct font_desc *sub_font; struct ass_track *ass_track; |