[FFmpeg-cvslog] r14221 - trunk/libavcodec/utils.c
Baptiste Coudurier
baptiste.coudurier
Wed Jul 16 07:07:05 CEST 2008
Baptiste Coudurier wrote:
> Hi,
>
> stefano wrote:
>> Author: stefano
>> Date: Sun Jul 13 23:44:00 2008
>> New Revision: 14221
>>
>> Log:
>> strdup() the default value for rc_eq in AVCodec when setting it in
>> avcodec_get_context_defaults(). The value has to be alloced dinamically
>> rather than statically since it may be freed for example by
>> av_set_string2(). Fix a segmentation fault.
>>
>>
>> Modified:
>> trunk/libavcodec/utils.c
>>
>> Modified: trunk/libavcodec/utils.c
>> ==============================================================================
>> --- trunk/libavcodec/utils.c (original)
>> +++ trunk/libavcodec/utils.c Sun Jul 13 23:44:00 2008
>> @@ -741,7 +741,7 @@ void avcodec_get_context_defaults2(AVCod
>> flags= AV_OPT_FLAG_SUBTITLE_PARAM;
>> av_opt_set_defaults2(s, flags, flags);
>>
>> - s->rc_eq= "tex^qComp";
>> + s->rc_eq= av_strdup("tex^qComp");
>> s->time_base= (AVRational){0,1};
>> s->get_buffer= avcodec_default_get_buffer;
>> s->release_buffer= avcodec_default_release_buffer;
>
> I think avcodec_close must now free it.
>
And according to valgrind, if you now use a new rc_eq, there is a memleak.
--
Baptiste COUDURIER GnuPG Key Id: 0x5C1ABAAA
Smartjog USA Inc. http://www.smartjog.com
Key fingerprint 8D77134D20CC9220201FC5DB0AC9325C5C1ABAAA
More information about the ffmpeg-cvslog
mailing list