dpxenc: fix signed c99 overflows

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Michael Niedermayer 2012-10-14 05:48:02 +02:00
parent 7a32ab5ed0
commit 2217a2249d

View File

@ -105,13 +105,13 @@ static void encode_rgb48_10bit(AVCodecContext *avctx, const AVPicture *pic, uint
for (x = 0; x < avctx->width; x++) {
int value;
if (s->big_endian) {
value = ((AV_RB16(src + 6*x + 4) & 0xFFC0) >> 4)
| ((AV_RB16(src + 6*x + 2) & 0xFFC0) << 6)
| ((AV_RB16(src + 6*x + 0) & 0xFFC0) << 16);
value = ((AV_RB16(src + 6*x + 4) & 0xFFC0U) >> 4)
| ((AV_RB16(src + 6*x + 2) & 0xFFC0U) << 6)
| ((AV_RB16(src + 6*x + 0) & 0xFFC0U) << 16);
} else {
value = ((AV_RL16(src + 6*x + 4) & 0xFFC0) >> 4)
| ((AV_RL16(src + 6*x + 2) & 0xFFC0) << 6)
| ((AV_RL16(src + 6*x + 0) & 0xFFC0) << 16);
value = ((AV_RL16(src + 6*x + 4) & 0xFFC0U) >> 4)
| ((AV_RL16(src + 6*x + 2) & 0xFFC0U) << 6)
| ((AV_RL16(src + 6*x + 0) & 0xFFC0U) << 16);
}
write32(dst, value);
dst += 4;