[vdr] [bug vdr-1.3.33] invalid LastReplayed() opens first folder

Udo Richter udo_richter at gmx.de
Mon Sep 26 01:34:49 CEST 2005


Hi Klaus,

I've found a minor bug in the new cMenuRecordings.

If the recordings menu is opened with OpenSubMenus=true and with 
cReplayControl::LastReplayed() pointing to a non-existing recording, VDR 
descends into the first recording sub menu, provide that the first 
recording menu item is a sub-menu, not a recording.

Steps to reproduce:
-Make sure the first entry in recordings is a folder, eg. record 
something to AAA~BBB~CCC
-Play some recording DDD~EEE and stop it
-Externally delete/move the DDD~EEE recording (deleting inside VDR 
doesn't trigger this)
-touch .update
-Enter recordings menu with direct remote key

Actual result:
Recording sub menu AAA~BBB is opened, CCC is selected.

Expected result:
Recording main menu opened, AAA selected.

Cool enhanced result:
Open the DDD sub menu if it still exists.


Background:
I think, the idea was that Set() selects the proper item, or keeps 
Current()<0 otherwise, so the Open() in 
cMenuRecordings::cMenuRecordings() is never called. However, the 
Display() in Set() automatically selects First() as fallback. The 'if 
(Current() < 0)' test in the constructor will never be triggered because 
of that.


Cheers,

Udo





More information about the vdr mailing list