[FFmpeg-devel] [PATCH] make libavcodec use bytestream functions

Ramiro Ribeiro Polla ramiro
Thu May 10 17:14:44 CEST 2007


M?ns Rullg?rd wrote:
> Ramiro Ribeiro Polla wrote:
>   
>> Ramiro Ribeiro Polla wrote:
>>     
>>> M?ns Rullg?rd wrote:
>>>       
>>>> Jindrich Makovicka wrote:
>>>>
>>>>         
>>>>> On 5/10/07, Jindrich Makovicka <makovick at gmail.com> wrote:
>>>>>
>>>>>           
>>>>>> On 5/10/07, M?ns Rullg?rd <mans at mansr.com> wrote:
>>>>>>
>>>>>>             
>>>>>>> Jindrich Makovicka <makovick at gmail.com> writes:
>>>>>>>
>>>>>>>               
>>>>>>>> intreadwrite.h needs fixing to compile here.
>>>>>>>>
>>>>>>>>                 
>>>>>>> OK.
>>>>>>>
>>>>>>> Out of interest, what compiler are you using, and what is the error
>>>>>>> message?
>>>>>>>
>>>>>>>               
>>>>>> i am away from the machine now, but it's gcc from Debian Sid (probably
>>>>>> 4.1.2) complaining about the semicolon after the closing brace.
>>>>>>
>>>>>>             
>>>>> more precisely, it complained about this piece of code:
>>>>>
>>>>>         if (le) AV_WL16(*dst, v);
>>>>>         else    AV_WB16(*dst, v);
>>>>>
>>>>>           
>>>> Ah, that explains it.  That bit is invalid C with the braces as they
>>>> are now.
>>>> Where is that code?
>>>>         
>>> Should I fix this in pcm.c with attached patch or intreadwrite.h?
>>>
>>>       
>> Fixed in pcm.c, since it seems more correct.
>>     
>
> It was not correct.  The header is still broken, and anything that looks
> like valid code should remain that way after macro expansion.
>
>   
>> The ST macros aren't enclosed in {}s, so that's why it compiled fine for
>> me. When more than one byte is written to in intreadwrite.h, {}s are
>> used, so the ; after them screwed up the if statement.
>>
>> Attached patch prevents this error from being silently ignored again. It
>> makes all AV_W macros look the same as {}s are concerned.
>>     
>
> No, very much no.  Your first patch was good.  Apply it.
>
>   
Do you prefer this patch? It looked uglier to me, so that's why I 
preferred fixing pcm.c.
But with your explanation, it sounds saner.

After intreadwrite.h gets fixed, should I revert the temporary fix I 
made on pcm.c (which wasn't the best solution)?

Ramiro Polla
-------------- next part --------------
A non-text attachment was scrubbed...
Name: intreadwrite.h.diff
Type: text/x-patch
Size: 4078 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20070510/6cebc3e5/attachment.bin>



More information about the ffmpeg-devel mailing list