[FFmpeg-devel] [PATCH] match input format names split by commas
Baptiste Coudurier
baptiste.coudurier
Sat Jan 17 22:41:02 CET 2009
Michael Niedermayer wrote:
> On Fri, Jan 16, 2009 at 08:43:15PM +0000, M?ns Rullg?rd wrote:
>> Baptiste Coudurier <baptiste.coudurier at gmail.com> writes:
>>
>>> Hi Michael,
>>>
>>> Michael Niedermayer wrote:
>>>> On Thu, Jan 15, 2009 at 03:38:29PM -0800, Baptiste Coudurier wrote:
>>>>> Hi,
>>>>>
>>>>> $subject, this enables using "mov", "mp4, "mj2" etc..
>>>> [...]
>>>>> Index: libavformat/utils.c
>>>>> ===================================================================
>>>>> --- libavformat/utils.c (revision 16617)
>>>>> +++ libavformat/utils.c (working copy)
>>>>> @@ -153,6 +153,20 @@
>>>>> return 0;
>>>>> }
>>>>> +static int match_format(const char *name, const char *names)
>>>>> +{
>>>>> + if (!name || !names)
>>>>> + return 0;
>>>>> + for (;;) {
>>>>> + if (!strncasecmp(name, names, strlen(name)))
>>>>> + return 1;
>>>>> + if (!(names = strchr(names, ',')))
>>>>> + break;
>>>>> + names++;
>>>>> + }
>>>>> + return 0;
>>>>> +}
>>>> with this m will match mp4
>>> Hehe, auto completion ;)
>>> New patch attached.
>>>
>>> Index: libavformat/utils.c
>>> ===================================================================
>>> --- libavformat/utils.c (revision 16614)
>>> +++ libavformat/utils.c (working copy)
>>> @@ -153,6 +153,24 @@
>>> return 0;
>>> }
>>>
>>> +static int match_format(const char *name, const char *names)
>>> +{
>>> + int len, namelen;
>>> + if (!name || !names)
>>> + return 0;
>>> + namelen = strlen(name);
>>> + for (;;) {
>>> + const char *p = strchr(names, ',');
>>> + if (!p)
>>> + return !strcasecmp(name, names);
>>> + len = FFMAX(p - names, namelen);
>>> + if (!strncasecmp(name, names, len))
>>> + return 1;
>>> + names = p+1;
>>> + }
>>> + return 0;
>>> +}
>> Simpler (untested):
>>
>> while (p = strchr(names, ',')) {
>> len = FFMAX(p - names, namelen);
>> if (!strncasecmp(name, names, len))
>> return 1;
>> names = p+1;
>> }
>> return strcasecmp(name, names);
>
> ok
>
Thanks, applied with return !strcasecmp which is correct.
--
Baptiste COUDURIER GnuPG Key Id: 0x5C1ABAAA
Key fingerprint 8D77134D20CC9220201FC5DB0AC9325C5C1ABAAA
checking for life_signs in -lkenny... no
More information about the ffmpeg-devel
mailing list