git.videolan.org
/
ffmpeg.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Avoid the last two uses of bitmasks in interplayvideo
[ffmpeg.git]
/
libavcodec
/
interplayvideo.c
diff --git
a/libavcodec/interplayvideo.c
b/libavcodec/interplayvideo.c
index
07f73bb
..
3062339
100644
(file)
--- a/
libavcodec/interplayvideo.c
+++ b/
libavcodec/interplayvideo.c
@@
-212,9
+212,9
@@
static int ipvideo_decode_block_opcode_0x7(IpvideoContext *s)
CHECK_STREAM_PTR(8);
for (y = 0; y < 8; y++) {
CHECK_STREAM_PTR(8);
for (y = 0; y < 8; y++) {
- flags = *s->stream_ptr++;
- for (
x = 0x01; x <= 0x80; x <<
= 1) {
- *s->pixel_ptr++ = P[
!!(flags & x)
];
+ flags = *s->stream_ptr++
| 0x100
;
+ for (
; flags != 1; flags >>
= 1) {
+ *s->pixel_ptr++ = P[
flags & 1
];
}
s->pixel_ptr += s->line_inc;
}
}
s->pixel_ptr += s->line_inc;
}
@@
-354,17
+354,15
@@
static int ipvideo_decode_block_opcode_0x8(IpvideoContext *s)
/* horizontal split; top & bottom halves are 2-color encoded */
for (y = 0; y < 8; y++) {
/* horizontal split; top & bottom halves are 2-color encoded */
for (y = 0; y < 8; y++) {
- int bitmask;
-
if (y == 4) {
P[0] = *s->stream_ptr++;
P[1] = *s->stream_ptr++;
}
if (y == 4) {
P[0] = *s->stream_ptr++;
P[1] = *s->stream_ptr++;
}
- flags = *s->stream_ptr++;
+ flags = *s->stream_ptr++
| 0x100
;
- for (
bitmask = 0x01; bitmask <= 0x80; bitmask <<
= 1) {
+ for (
; flags != 1; flags >>
= 1) {
- *s->pixel_ptr++ = P[
!!(flags & bitmask)
];
+ *s->pixel_ptr++ = P[
flags & 1
];
}
s->pixel_ptr += s->line_inc;
}
}
s->pixel_ptr += s->line_inc;
}