Opened 14 years ago
Closed 14 years ago
Last modified 14 years ago
#8527 closed patch (fixed)
Unsigned overflow in IsNearEnd
Reported by: | Owned by: | danielk | |
---|---|---|---|
Priority: | minor | Milestone: | unknown |
Component: | MythTV - General | Version: | Unspecified |
Severity: | medium | Keywords: | |
Cc: | Ticket locked: | no |
Description
Changeset [24694] (ProgramInfo? refactor) changed some signed variables to unsigned, so when the current frame appears to be past the last frame, the unsigned subtraction goes wrong. I have only experienced this with the patch in #7994 on some mkv files.
It would be nicer to figure out the root cause upstream, of why it looks like the current frame is greater than the last frame, but this one-line patch is good for now.
Attachments (1)
Change History (5)
Changed 14 years ago by
Attachment: | isnearend_overflow.patch added |
---|
comment:1 Changed 14 years ago by
Owner: | changed from Isaac Richards to danielk |
---|---|
Status: | new → assigned |
comment:2 Changed 14 years ago by
comment:3 Changed 14 years ago by
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
(In [25091]) Fixes #8527. Sometimes we play past the 'last frame' of a video when watching a recording currently being recorded, this allows IsNearEnd?() to return true in that case since we are most certainly near the end of the video in that case.
We should never actually get this close to the end of the video as there are safegards in place on skip, fast forward and timestretch to prevent this situation from occuring, but the failure of one or more of those mechanism is a separate bug.
comment:4 Changed 14 years ago by
Update to 25100 seemed to fix the problem, but today it is back. running -v all makes failure not happen from the ordinary trace, skipping to end, while recording ...
2010-06-14 17:24:25.335 SendReceiveStringList?(MESSAGE,SYSTEM_EVENT PLAY_UNPAUSED HOSTNAME haycorn CHANID 1010 STARTTIME 2010-06-14T17:00:00 SENDER haycorn) called from UI thread 2010-06-14 17:24:25.400 ScreenSaverX11Private: DPMS Deactivated 1 2010-06-14 17:24:30.261 [mpeg2video @ 0x7fefbdd104e0]ac-tex damaged at 21 23 2010-06-14 17:24:30.261 [mpeg2video @ 0x7fefbdd104e0]Warning MVs not available 2010-06-14 17:24:30.277 [mp2 @ 0x7fefbdd104e0]incomplete frame 2010-06-14 17:24:30.277 AFD Error: Unknown audio decoding error 2010-06-14 17:24:30.426 TV: Attempting to change from WatchingRecording? to None 2010-06-14 17:24:30.485 TV: Changing from WatchingRecording? to None 2010-06-14 17:24:30.508 ScreenSaverX11Private: DPMS Reactivated 1 2010-06-14 17:24:30.509 TV: Attempting to change from None to None 2010-06-14 17:24:30.580 SendReceiveStringList?(MESSAGE,SYSTEM_EVENT PLAY_STOPPED HOSTNAME haycorn CHANID 1010 STARTTIME 2010-06-14T17:00:00 SENDER haycorn) called from UI thread
(In [24973]) Fix NuppelVideoPlayer::IsNearEnd? prototype following the libmythui-osd merge.
This fixes the reported compilation issue but IsNearEnd? clearly needs a little more work following the ProgramInfo? refactor - there are definitely some sign issues (refs #8527).
Refs #7650