- if (get_bits(gb, 1)) { /* seconds_flag */
- skip_bits(gb, 6); /* seconds_value range 0..59 */
- if (get_bits(gb, 1)) { /* minutes_flag */
- skip_bits(gb, 6); /* minutes_value 0..59 */
- if (get_bits(gb, 1)) /* hours_flag */
- skip_bits(gb, 5); /* hours_value 0..23 */
+ tc->seconds = tc->minutes = tc->hours = tc->full = 0;
+ if (get_bits(gb, 1)) { /* seconds_flag */
+ tc->seconds = get_bits(gb, 6);
+ if (get_bits(gb, 1)) { /* minutes_flag */
+ tc->minutes = get_bits(gb, 6);
+ if (get_bits(gb, 1)) /* hours_flag */
+ tc->hours = get_bits(gb, 5);