avutil/avstring: Factor av_match_list() out

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Michael Niedermayer
2014-09-30 19:00:52 +02:00
parent 6ea357ea83
commit 0d92b0d5f4
5 changed files with 36 additions and 19 deletions
+3 -17
View File
@@ -80,28 +80,14 @@ void av_register_output_format(AVOutputFormat *format)
int av_match_ext(const char *filename, const char *extensions)
{
const char *ext, *p;
char ext1[32], *q;
const char *ext;
if (!filename)
return 0;
ext = strrchr(filename, '.');
if (ext) {
ext++;
p = extensions;
for (;;) {
q = ext1;
while (*p != '\0' && *p != ',' && q - ext1 < sizeof(ext1) - 1)
*q++ = *p++;
*q = '\0';
if (!av_strcasecmp(ext1, ext))
return 1;
if (*p == '\0')
break;
p++;
}
}
if (ext)
return av_match_list(ext + 1, extensions, ',');
return 0;
}