[FFmpeg-devel] [PATCH] ac3_parser type punning fix

David DeHaven dave
Sun Oct 19 07:44:16 CEST 2008

> Nothing major, I just applied the same fix that was applied to  
> aac_parser.c recently...
> -DrD-
> <ac3_parser.patch>

I think there was confusion about the whole point of this patch...

On the four x86 based machine/OS combos I built and tested on (i686-pc- 
mingw32, 2x i686-pc-linux, i686-apple-darwin), gcc with optimizations  
at more than -O0 would produce machine code that would *only* byteswap  
32 of the 64 bits in the "state" variable passed to both aac_sync and  
ac3_sync leading to complete and utter misinterpretation of the header  
information. The result: at the *least* would be that it reported the  
wrong information to stdout, at worst it would crash due to having the  
wrong codec parameters. I can't honestly believe that noone else has  
seen this problem, especially considering aac_sync has been already  
fixed unless that was simply a "compiler warning" fix.

I can provide disassembly snippets if you need further convincing...


More information about the ffmpeg-devel mailing list