[Ffmpeg-cvslog] r5542 - trunk/libavcodec/vc1.c

kostya subversion
Thu Jun 29 13:02:33 CEST 2006


Author: kostya
Date: Thu Jun 29 13:02:33 2006
New Revision: 5542

Modified:
   trunk/libavcodec/vc1.c

Log:
This should make P-frames decoding work on x86 (by avoiding get_bits(0))


Modified: trunk/libavcodec/vc1.c
==============================================================================
--- trunk/libavcodec/vc1.c	(original)
+++ trunk/libavcodec/vc1.c	Thu Jun 29 13:02:33 2006
@@ -1341,14 +1341,18 @@
     index1 = index%6;                                               \
     if (s->mspel && index1 == 5) val = 1;                           \
     else                         val = 0;                           \
-    val = get_bits(gb, size_table[index1] - val);                   \
+    if(size_table[index1] - val > 0)                                \
+        val = get_bits(gb, size_table[index1] - val);               \
+    else                                   val = 0;                 \
     sign = 0 - (val&1);                                             \
     _dmv_x = (sign ^ ((val>>1) + offset_table[index1])) - sign;     \
                                                                     \
     index1 = index/6;                                               \
     if (s->mspel && index1 == 5) val = 1;                           \
-    else                          val = 0;                          \
-    val = get_bits(gb, size_table[index1] - val);                   \
+    else                         val = 0;                           \
+    if(size_table[index1] - val > 0)                                \
+        val = get_bits(gb, size_table[index1] - val);               \
+    else                                   val = 0;                 \
     sign = 0 - (val&1);                                             \
     _dmv_y = (sign ^ ((val>>1) + offset_table[index1])) - sign;     \
   }




More information about the ffmpeg-cvslog mailing list