diff options
Diffstat (limited to 'libass/ass_utils.c')
-rw-r--r-- | libass/ass_utils.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/libass/ass_utils.c b/libass/ass_utils.c index df7c447..ba31261 100644 --- a/libass/ass_utils.c +++ b/libass/ass_utils.c @@ -224,6 +224,26 @@ int lookup_style(ASS_Track *track, char *name) return i; // use the first style } +/** + * \brief find style by name as in \r + * \param track track + * \param name style name + * \return style in track->styles + * Returns NULL if no style has the given name. + */ +ASS_Style *lookup_style_strict(ASS_Track *track, char *name) +{ + int i; + for (i = track->n_styles - 1; i >= 0; --i) { + if (strcmp(track->styles[i].Name, name) == 0) + return track->styles + i; + } + ass_msg(track->library, MSGL_WARN, + "[%p]: Warning: no style named '%s' found", + track, name); + return NULL; +} + #ifdef CONFIG_ENCA void *ass_guess_buffer_cp(ASS_Library *library, unsigned char *buffer, int buflen, char *preferred_language, |