|
@@ -91,18 +91,23 @@ static int is_multimedia_file(const unsigned char *s, const char *sub)
|
|
|
{
|
|
|
size_t slen = strlen(s);
|
|
|
size_t sublen = strlen(sub);
|
|
|
+ int i;
|
|
|
|
|
|
/*
|
|
|
* filename format of multimedia file should be defined as:
|
|
|
- * "filename + '.' + extension".
|
|
|
+ * "filename + '.' + extension + (optional: '.' + temp extension)".
|
|
|
*/
|
|
|
if (slen < sublen + 2)
|
|
|
return 0;
|
|
|
|
|
|
- if (s[slen - sublen - 1] != '.')
|
|
|
- return 0;
|
|
|
+ for (i = 1; i < slen - sublen; i++) {
|
|
|
+ if (s[i] != '.')
|
|
|
+ continue;
|
|
|
+ if (!strncasecmp(s + i + 1, sub, sublen))
|
|
|
+ return 1;
|
|
|
+ }
|
|
|
|
|
|
- return !strncasecmp(s + slen - sublen, sub, sublen);
|
|
|
+ return 0;
|
|
|
}
|
|
|
|
|
|
/*
|