Index: libmpc/trunk/libmpcenc/bitstream.c
===================================================================
--- libmpc/trunk/libmpcenc/bitstream.c	(revision 294)
+++ libmpc/trunk/libmpcenc/bitstream.c	(revision 307)
@@ -133,7 +133,7 @@
 	nb &= (1 << k) - 1;
 
-	while( l > 32 ){
-		writeBits(e, 0, 32);
-		l -= 32;
+	while( l > 31 ){
+		writeBits(e, 0, 31);
+		l -= 31;
 	}
 	writeBits(e, 1, l);
Index: libmpc/trunk/libmpcenc/libmpcenc.h
===================================================================
--- libmpc/trunk/libmpcenc/libmpcenc.h	(revision 294)
+++ libmpc/trunk/libmpcenc/libmpcenc.h	(revision 307)
@@ -95,4 +95,6 @@
  void writeMagic (mpc_encoder_t * e);
  void emptyBits(mpc_encoder_t * e);
+
+ /// maximum number of output bits is 31 !
  static mpc_inline void writeBits (mpc_encoder_t * e, mpc_uint32_t input, unsigned int bits )
  {
