]> git.sesse.net Git - vlc/blobdiff - include/vlc_bits.h
Optimized a bit bs_skip.
[vlc] / include / vlc_bits.h
index 4dcfa2f1a37e577448a371dea8c56303551d48bf..778493cb3f7f7e46a8ae967b500300b52b77f846 100644 (file)
@@ -132,10 +132,12 @@ static inline void bs_skip( bs_t *s, int i_count )
 {
     s->i_left -= i_count;
 
-    while( s->i_left <= 0 )
+    if( s->i_left <= 0 )
     {
-        s->p++;
-        s->i_left += 8;
+        const int i_bytes = ( -s->i_left + 8 ) / 8;
+
+        s->p += i_bytes;
+        s->i_left += 8 * i_bytes;
     }
 }