--- libavcodec/htmlsubtitles.c | 76 ++++++++++++++++++++++------------------------ 1 file changed, 36 insertions(+), 40 deletions(-)
diff --git a/libavcodec/htmlsubtitles.c b/libavcodec/htmlsubtitles.c index 2b47c426ee..f4501816e5 100644 --- a/libavcodec/htmlsubtitles.c +++ b/libavcodec/htmlsubtitles.c @@ -175,8 +175,6 @@ int ff_htmlmarkup_to_ass(void *log_ctx, AVBPrint *dst, const char *in) } } - // TODO: reindent - if (!av_strcasecmp(tagname, "font")) { if (tag_close && sptr > 0) { struct font_tag *cur_tag = &stack[sptr--]; @@ -207,48 +205,46 @@ int ff_htmlmarkup_to_ass(void *log_ctx, AVBPrint *dst, const char *in) *new_tag = stack[sptr++]; - while (param) { - if (!av_strncasecmp(param, "size=", 5)) { - param += 5 + (param[5] == '"'); - if (sscanf(param, "%u", &new_tag->size) == 1) - av_bprintf(dst, "{\\fs%u}", new_tag->size); - } else if (!av_strncasecmp(param, "color=", 6)) { - int color; - param += 6 + (param[6] == '"'); - color = html_color_parse(log_ctx, param); - if (color >= 0) { - new_tag->color = 0xff000000 | color; - av_bprintf(dst, "{\\c&H%X&}", new_tag->color & 0xffffff); - } - } else if (!av_strncasecmp(param, "face=", 5)) { - param += 5 + (param[5] == '"'); - len = strcspn(param, - param[-1] == '"' ? "\"" :" "); - av_strlcpy(new_tag->face, param, - FFMIN(sizeof(new_tag->face), len+1)); - param += len; - av_bprintf(dst, "{\\fn%s}", new_tag->face); + while (param) { + if (!av_strncasecmp(param, "size=", 5)) { + param += 5 + (param[5] == '"'); + if (sscanf(param, "%u", &new_tag->size) == 1) + av_bprintf(dst, "{\\fs%u}", new_tag->size); + } else if (!av_strncasecmp(param, "color=", 6)) { + int color; + param += 6 + (param[6] == '"'); + color = html_color_parse(log_ctx, param); + if (color >= 0) { + new_tag->color = 0xff000000 | color; + av_bprintf(dst, "{\\c&H%X&}", new_tag->color & 0xffffff); } - if ((param = strchr(param, ' '))) - param++; + } else if (!av_strncasecmp(param, "face=", 5)) { + param += 5 + (param[5] == '"'); + len = strcspn(param, + param[-1] == '"' ? "\"" :" "); + av_strlcpy(new_tag->face, param, + FFMIN(sizeof(new_tag->face), len+1)); + param += len; + av_bprintf(dst, "{\\fn%s}", new_tag->face); } + if ((param = strchr(param, ' '))) + param++; } - + } in += skip; - - } else if (tagname[0] && !tagname[1] && strchr("bisu", av_tolower(tagname[0]))) { - av_bprintf(dst, "{\\%c%d}", (char)av_tolower(tagname[0]), !tag_close); - in += skip; - } else if (!av_strncasecmp(tagname, "br", 2) && - (!tagname[2] || (tagname[2] == '/' && !tagname[3]))) { - av_bprintf(dst, "\\N"); - in += skip; - } else if (likely_a_tag) { - if (!tag_close) // warn only once - av_log(log_ctx, AV_LOG_WARNING, "Unrecognized tag %s\n", tagname); - in += skip; - } else { - av_bprint_chars(dst, '<', 1); + } else if (tagname[0] && !tagname[1] && strchr("bisu", av_tolower(tagname[0]))) { + av_bprintf(dst, "{\\%c%d}", (char)av_tolower(tagname[0]), !tag_close); + in += skip; + } else if (!av_strncasecmp(tagname, "br", 2) && + (!tagname[2] || (tagname[2] == '/' && !tagname[3]))) { + av_bprintf(dst, "\\N"); + in += skip; + } else if (likely_a_tag) { + if (!tag_close) // warn only once + av_log(log_ctx, AV_LOG_WARNING, "Unrecognized tag %s\n", tagname); + in += skip; + } else { + av_bprint_chars(dst, '<', 1); } } else { av_bprint_chars(dst, *in, 1); -- 2.13.3 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel