Description
The line defines captionRowCount:
The inner class CueBuilder has the same member defined on line 594.
The problem is, that the value of the inner class is only updated in ResetCueBuilders(), so this order of incoming commands and characters are processed incorrectly:
11-27 17:30:01.000 D/Cea608Decoder: MISC: ROLL_UP_CAPTIONS_2_ROWS
11-27 17:30:01.063 D/Cea608Decoder: MISC: CARRIAGE_RETURN
11-27 17:30:01.136 D/Cea608Decoder: PAC: Row:15; Col:1; Color:WHITE; italic:false; underline:false
11-27 17:30:01.166 D/Cea608Decoder: Incoming char: I
11-27 17:30:01.302 D/Cea608Decoder: Incoming char:
11-27 17:30:01.331 D/Cea608Decoder: Incoming char: A
11-27 17:30:01.332 D/Cea608Decoder: Incoming char: L
11-27 17:30:01.360 D/Cea608Decoder: Incoming char: W
11-27 17:30:01.360 D/Cea608Decoder: Incoming char: A
11-27 17:30:01.400 D/Cea608Decoder: Incoming char: Y
11-27 17:30:01.400 D/Cea608Decoder: Incoming char: S
11-27 17:30:01.435 D/Cea608Decoder: Incoming char:
11-27 17:30:01.465 D/Cea608Decoder: Incoming char: F
11-27 17:30:01.465 D/Cea608Decoder: Incoming char: O
11-27 17:30:01.495 D/Cea608Decoder: Incoming char: R
11-27 17:30:01.495 D/Cea608Decoder: Incoming char: G
11-27 17:30:01.535 D/Cea608Decoder: Incoming char: E
11-27 17:30:01.536 D/Cea608Decoder: Incoming char: T
11-27 17:30:01.567 D/Cea608Decoder: Incoming char: .
11-27 17:30:02.165 D/Cea608Decoder: MISC: ROLL_UP_CAPTIONS_3_ROWS
11-27 17:30:02.206 D/Cea608Decoder: MISC: CARRIAGE_RETURN
11-27 17:30:02.240 D/Cea608Decoder: PAC: Row:15; Col:1; Color:WHITE; italic:false; underline:false
11-27 17:30:02.308 D/Cea608Decoder: Incoming char: W
11-27 17:30:02.308 D/Cea608Decoder: Incoming char: H
11-27 17:30:02.340 D/Cea608Decoder: Incoming char: A
11-27 17:30:02.340 D/Cea608Decoder: Incoming char: T
11-27 17:30:02.544 D/Cea608Decoder: Incoming char:
11-27 17:30:02.574 D/Cea608Decoder: Incoming char: H
11-27 17:30:02.574 D/Cea608Decoder: Incoming char: A
11-27 17:30:02.604 D/Cea608Decoder: Incoming char: V
11-27 17:30:02.604 D/Cea608Decoder: Incoming char: E
11-27 17:30:02.635 D/Cea608Decoder: Incoming char:
11-27 17:30:02.667 D/Cea608Decoder: Incoming char: I
11-27 17:30:02.766 D/Cea608Decoder: Incoming char:
11-27 17:30:02.766 D/Cea608Decoder: Incoming char: J
11-27 17:30:02.807 D/Cea608Decoder: Incoming char: U
11-27 17:30:02.808 D/Cea608Decoder: Incoming char: S
11-27 17:30:02.841 D/Cea608Decoder: Incoming char: T
11-27 17:30:02.868 D/Cea608Decoder: Incoming char:
11-27 17:30:02.868 D/Cea608Decoder: Incoming char: B
11-27 17:30:02.899 D/Cea608Decoder: Incoming char: I
11-27 17:30:02.900 D/Cea608Decoder: Incoming char: N
11-27 17:30:02.938 D/Cea608Decoder: Incoming char: G
11-27 17:30:02.939 D/Cea608Decoder: Incoming char: E
11-27 17:30:04.541 D/Cea608Decoder: Incoming char:
11-27 17:30:04.541 D/Cea608Decoder: Incoming char: W
11-27 17:30:04.569 D/Cea608Decoder: Incoming char: A
11-27 17:30:04.569 D/Cea608Decoder: Incoming char: T
11-27 17:30:04.602 D/Cea608Decoder: Incoming char: C
11-27 17:30:04.935 D/Cea608Decoder: Incoming char: H
11-27 17:30:05.039 D/Cea608Decoder: Incoming char: ?
The value of captionRowCount in the inner class is not updated to 3, rendering is kept using the value 2 until the next resetCueBuilders() call. Note: if I seek back to this position in the content the captionRowCount is kept on the value last set by resetCueBuilders() so any number of rows can be shown depending on the position the seek is originating from.