mirror of https://git.ffmpeg.org/ffmpeg.git
Fix unaligned access in ff_copy_bits()
Originally committed as revision 17921 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
75800dce2b
commit
f49568a467
|
@ -83,7 +83,7 @@ void ff_copy_bits(PutBitContext *pb, const uint8_t *src, int length)
|
||||||
if(length==0) return;
|
if(length==0) return;
|
||||||
|
|
||||||
if(CONFIG_SMALL || words < 16 || put_bits_count(pb)&7){
|
if(CONFIG_SMALL || words < 16 || put_bits_count(pb)&7){
|
||||||
for(i=0; i<words; i++) put_bits(pb, 16, be2me_16(srcw[i]));
|
for(i=0; i<words; i++) put_bits(pb, 16, AV_RB16(&srcw[i]));
|
||||||
}else{
|
}else{
|
||||||
for(i=0; put_bits_count(pb)&31; i++)
|
for(i=0; put_bits_count(pb)&31; i++)
|
||||||
put_bits(pb, 8, src[i]);
|
put_bits(pb, 8, src[i]);
|
||||||
|
@ -92,7 +92,7 @@ void ff_copy_bits(PutBitContext *pb, const uint8_t *src, int length)
|
||||||
skip_put_bytes(pb, 2*words-i);
|
skip_put_bytes(pb, 2*words-i);
|
||||||
}
|
}
|
||||||
|
|
||||||
put_bits(pb, bits, be2me_16(srcw[words])>>(16-bits));
|
put_bits(pb, bits, AV_RB16(&srcw[words])>>(16-bits));
|
||||||
}
|
}
|
||||||
|
|
||||||
/* VLC decoding */
|
/* VLC decoding */
|
||||||
|
|
Loading…
Reference in New Issue