[DVDnav-discuss] [PATCH] src/dvdread/ifo_types.h: fix structure cell_playback_t.

sayurin magicalsayuri at gmail.com
Tue Jun 2 16:08:41 CEST 2015


Structure cell_playback_t is broken because of wrong member size.

diff --git a/src/dvdread/ifo_types.h b/src/dvdread/ifo_types.h
index 33f0346..8682ab2 100644
--- a/src/dvdread/ifo_types.h
+++ b/src/dvdread/ifo_types.h
@@ -209,16 +209,16 @@ typedef uint8_t pgc_program_map_t;
  * Cell Playback Information.
  */
 typedef struct {
-  unsigned int block_mode       : 2;
-  unsigned int block_type       : 2;
-  unsigned int seamless_play    : 1;
-  unsigned int interleaved      : 1;
-  unsigned int stc_discontinuity: 1;
-  unsigned int seamless_angle   : 1;
+  unsigned char block_mode       : 2;
+  unsigned char block_type       : 2;
+  unsigned char seamless_play    : 1;
+  unsigned char interleaved      : 1;
+  unsigned char stc_discontinuity: 1;
+  unsigned char seamless_angle   : 1;

-  unsigned int playback_mode    : 1;  /**< When set, enter StillMode after
each VOBU */
-  unsigned int restricted       : 1;  /**< ?? drop out of fastforward? */
-  unsigned int unknown2         : 6;
+  unsigned char playback_mode    : 1;  /**< When set, enter StillMode
after each VOBU */
+  unsigned char restricted       : 1;  /**< ?? drop out of fastforward? */
+  unsigned char unknown2         : 6;
   uint8_t still_time;
   uint8_t cell_cmd_nr;
   dvd_time_t playback_time;

-- 
Kurata Sayuri


More information about the DVDnav-discuss mailing list