Timeshift buffer in inconsistent state after restarting from standby

Issue #489 resolved
prl created an issue

When standby is entered, timeshifting is stopped, and then resumed when the system is restarted from standby.

If there are several events in the timeshift buffer when standby is entered, the oldest event is replaced by the now current event's timeshift buffer. As new events start new timeshift buffers, they replace the old timeshift buffers, oldest to newest, until all the old timeshift event buffers are replaced. Then new timeshift event buffers are added as normal.

On restarting from standby, the timeshift buffer should either be cleared and restarted from empty, or continued, with new events being added to the timeshift buffer rather than overwriting them. In the latter solution, if the same event is still running when the system is restarted from standby, there should be two timeshift buffers for the event, one from before the system entered standby, and one after.

Replication Steps

Allow the timeshift buffer to accumulate 4 or 5 events. ABCKIDS and ABC2 afternoon programs allow this to be done reasonably quickly. Take note of the events in the timeshift buffer with their start times (REC>Select an event to save, note events, EXIT is a convenient way of listing the events).

Enter standby.

Wait for the start of the next program (to make the changes in the event list clearer).

Restart from standby.

As new events start, check the changes in the timeshift buffer (using REC>Select an event to save, note events, EXIT can be used again).

The events in the event buffer get replaced, oldest to newest, rather than the old events being cleared, or the new events being added to the event buffer.

The initial sort order in the "event to save" popup is also incorrect, because it is sorted by buffer number not by time, and now the buffer number now doesn't reflect time order. When all the old events have been replaced, the popup list will then be in the correct order once more.

Comments (1)

  1. Peter Urbanec

    Fix Bug #489: Timeshift buffer in inconsistent state after restarting from standby

    [InfoBarTimeshift]

    In ptsCleanTimeshiftFolder() clear the timeshift buffer whether coming out of standby or not.

    → <<cset 27afea30a98d>>

  2. Log in to comment