LSTT output

Message ID 43DA3EEA.9050800@cadsoft.de
State New
Headers

Commit Message

Klaus Schmidinger Jan. 27, 2006, 3:40 p.m. UTC
  Andreas Mair wrote:
> Hi,
> 
> On Wednesday 05 October 2005 18:32, Klaus Schmidinger wrote:
> 
>>Andreas Mair wrote:
>>
>>>Hi,
>>>
>>>yesterday I've run the LSTR command (VDR v1.3.34).
>>>That's the session:
>>>
>>>========== SNIP =============
>>>VDR vdr-1.3.34 # svdrpsend.pl lstt
>>>220 VDR SVDRP VideoDiskRecorder 1.3.34; Tue Oct  4 20:35:09 2005
>>>...
>>>250-5 9:8:-D-----:2115:2235:50:99:Desperate Housewives:
>>>...
>>>250 8 9:4:2005-10-04:2013:2230:50:99:Der Todestunnel - Nur die Wahrheit
>>>zählt:Bei einem Unfall im Seller-Tunnel löst ein völlig übermüdeter
>>>Lkw-Fahrer eine verheerende Brandkatastrophe aus. Staatsanwältin Sabine
>>>Fink soll ihn hinter Gitter bringen, doch sie ist überzeugt, dass der
>>>Fahrer nicht der einzig Schuldige ist. Gegen alle Widerstände rollt sie
>>>den Fall neu auf ...
>>>221 VDR closing connection
>>>VDR vdr-1.3.34 #
>>>========== SNAP =============
>>>
>>>I wonder why the two shown timers have flags=9. I think it's OK for
>>>timer #8 because it's running. But timer #5 starts at 21:15 and the
>>>system time is 20:35. So why is it set to "currently recording"?
>>>
>>>...
> Now it's reproduceable (at least with my VDR  box, vanilla 1.3.39):
> - Program a new repeating timer.
> - When this timer is recording go to timers menu and press "Blue" (temp. 
> disable).
> - Now "lstt" correctly returns the timer's flag as "1".
> - If you now exit VDR (I guess it must be before the timer's regular stop 
> time) VDR writes the timer's flag as "9" into timers.conf.
> - After starting VDR again "lstt" reports "9" too.

The problem is that VDR writes the timers.conf file after the
key is pressed, but at that time the recording is still going on.

Clearing the flag when reading the timers from timers.conf or
an SVDRP command fixes it:



(I know, Thunderbird inserts blanks, but I'm just too lazy to
create an extra file attachment for such a one-liner ;-)

Klaus
  

Patch

--- timers.c    2006/01/15 13:31:11     1.43
+++ timers.c    2006/01/27 15:35:17
@@ -245,6 +245,7 @@ 
       }
    bool result = false;
    if (8 <= sscanf(s, "%u :%a[^:]:%a[^:]:%d :%d :%d :%d :%a[^:\n]:%a[^\n]", &flags, &channelbuffer, &daybuffer, &start, &stop, &priority, &lifetime, &filebuffer, &summary)) {
+     ClrFlags(tfRecording);
       if (summary && !*skipspace(summary)) {
          free(summary);
          summary = NULL;