summaryrefslogtreecommitdiffstats
path: root/spudec.c
diff options
context:
space:
mode:
authorreimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2010-07-25 09:41:30 +0000
committerUoti Urpala <uau@glyph.nonexistent.invalid>2010-11-02 04:14:45 +0200
commit68200fa5659bb345c1ffe33f77949a04846dd7ae (patch)
treef2ba84254e852f8c20c6e5ff14d6464bb554e925 /spudec.c
parent599647ff8c6377109f8ce323eec9da59a3ad53f0 (diff)
downloadmpv-68200fa5659bb345c1ffe33f77949a04846dd7ae.tar.bz2
mpv-68200fa5659bb345c1ffe33f77949a04846dd7ae.tar.xz
spudec.c: Slightly simplify rle decoding
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31799 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'spudec.c')
-rw-r--r--spudec.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/spudec.c b/spudec.c
index 4d26323d11..17ed1ceb0f 100644
--- a/spudec.c
+++ b/spudec.c
@@ -298,13 +298,12 @@ static void spudec_process_data(spudec_handle_t *this, packet_t *packet)
unsigned int rle = 0;
rle = get_nibble(packet);
if (rle < 0x04) {
- rle = (rle << 4) | get_nibble(packet);
- if (rle < 0x10) {
+ if (rle == 0) {
rle = (rle << 4) | get_nibble(packet);
- if (rle < 0x040) {
+ if (rle < 0x04)
rle = (rle << 4) | get_nibble(packet);
- }
}
+ rle = (rle << 4) | get_nibble(packet);
}
color = 3 - (rle & 0x3);
len = rle >> 2;