diff options
author | Oleg Oshmyan <chortos@inbox.lv> | 2014-05-29 23:38:45 +0100 |
---|---|---|
committer | Oleg Oshmyan <chortos@inbox.lv> | 2014-06-06 15:10:07 +0100 |
commit | 0ab014a535aa1d2e7e3f35e58887c71b541e0631 (patch) | |
tree | a0159a89a0cfd5bb1e538036fa95b13e17820d57 /libass/ass_utils.c | |
parent | 3199a876dd5da0463fd6c6c231db7c3bb223c2ef (diff) | |
download | libass-0ab014a535aa1d2e7e3f35e58887c71b541e0631.tar.bz2 libass-0ab014a535aa1d2e7e3f35e58887c71b541e0631.tar.xz |
parse_tag: remove unnecessary malloc
Diffstat (limited to 'libass/ass_utils.c')
-rw-r--r-- | libass/ass_utils.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/libass/ass_utils.c b/libass/ass_utils.c index c545012..778da80 100644 --- a/libass/ass_utils.c +++ b/libass/ass_utils.c @@ -337,19 +337,21 @@ int lookup_style(ASS_Track *track, char *name) * \brief find style by name as in \r * \param track track * \param name style name + * \param len style name length * \return style in track->styles * Returns NULL if no style has the given name. */ -ASS_Style *lookup_style_strict(ASS_Track *track, char *name) +ASS_Style *lookup_style_strict(ASS_Track *track, char *name, size_t len) { int i; for (i = track->n_styles - 1; i >= 0; --i) { - if (strcmp(track->styles[i].Name, name) == 0) + if (strncmp(track->styles[i].Name, name, len) == 0 && + track->styles[i].Name[len] == '\0') return track->styles + i; } ass_msg(track->library, MSGL_WARN, - "[%p]: Warning: no style named '%s' found", - track, name); + "[%p]: Warning: no style named '%.*s' found", + track, (int) len, name); return NULL; } |