[FFmpeg-devel] libavcodec/pthread.c:138: error: no previous prototype for 'avcodec_thread_execute2'
Måns Rullgård
mans
Mon Mar 8 17:16:57 CET 2010
Benoit Fouet <benoit.fouet at free.fr> writes:
> On Mon, 08 Mar 2010 14:52:44 +0000 M?ns Rullg?rd wrote:
>> Benoit Fouet <benoit.fouet at free.fr> writes:
>>
>> > On Mon, 08 Mar 2010 14:17:01 +0000 M?ns Rullg?rd wrote:
>> >> Benoit Fouet <benoit.fouet at free.fr> writes:
>> >>
>> >> > On Mon, 08 Mar 2010 13:58:49 +0100 Andreas ?man wrote:
>> >> >> Georgi Chorbadzhiyski wrote:
>> >> >> > Around 03/08/10 12:43, Benoit Fouet scribbled:
>> >> >> >> On Mon, 08 Mar 2010 12:28:37 +0200 Georgi Chorbadzhiyski wrote:
>> >> >> >>> gf at gf:~/ffmpeg$ make
>> >> >> >>> CC libavcodec/pthread.o
>> >> >> >>> libavcodec/pthread.c:138: error: no previous prototype for 'avcodec_thread_execute2'
>> >> >> >>> make: *** [libavcodec/pthread.o] Error 1
>> >> >> >>>
>> >> >> >>> This fixes it but I don't think this is the correct fix. It should not give error
>> >> >> >>> here.
>> >> >> >> missing prototypes now results in an error.
>> >> >> >
>> >> >> > I've missed this. This is a good change.
>> >> >>
>> >> >> Fixed, and for w32thread.c as well.
>> >> >
>> >> > Your fix is not in line with what exists e.g. for avcodec_thread_execute
>> >> > I don't know which solution we should aim at, but now we're somewhere
>> >> > in between, and IMHO, that needs to be fixed: either make
>> >> > avcodec_thread_execute2 part of the API, or remove the other ones from
>> >> > the API.
>> >>
>> >> Neither of them make sense in the public API. There is no sensible
>> >> way for an application to use them.
>> >>
>> >
>> > this is fine by me.
>> > If my understanding is correct, anyone can add his own thread
>> > management, right ? Then I guess we should provide function pointer
>> > prototypes, instead of providing these.
>>
>> We already have AVCodecContext.execute as a function pointer.
>>
>
> let's drop what's unused in avcodec.h then.
> Patch below to do that (I also made thread_func in OS/2 static, though
> I can do it in a separate patch if needed, and if correct (maybe there
> is some black magic things there preventing that to work correctly)),
> does that look ok ?
Skip the ifdeffery, just drop the prototypes. These being in the
public header file is an error, and nobody should be using them.
--
M?ns Rullg?rd
mans at mansr.com
More information about the ffmpeg-devel
mailing list