Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[vdr] Re: Log of Timer Bug



Klaus Schmidinger wrote:
> 
> Klaus Schmidinger wrote:
> >
> > ...
> > Can you please apply the following patch to VDR/config.c? This will dump some
> > internal information in case a timer is triggered. Hopefully we can then see
> > why this is happening. Note that as long as the timer is active (i.e. recording)
> > there will be information writen to the log file, so the log may become pretty
> > large. Once you get such an error case again, please post the lines around the
> > start and stop of that timer.
> >
> > Here's the debug patch:
> >
> > ------------------------------------- snip -----------------------------------------
> > --- config.c    2001/09/22 13:36:59     1.73
> > +++ config.c    2001/10/17 16:12:08
> > @@ -554,6 +554,24 @@
> >              }
> >           }
> >        }
> > +  if (active && startTime <= t && t < stopTime) {
> > +     int i;
> > +     time_t tx = 0;
> > +     for (i = -1; i <= DaysToCheck; i++) {
> > +         time_t t0 = IncDay(t, i);
> > +         if (DayMatches(t0)) {
> > +            time_t a = SetTime(t0, begin);
> > +            time_t b = a + length;
> > +            if (t <= b) {
> > +               startTime = a;
> > +               stopTime = b;
> > +               tx = t0;
> > +               break;
> > +               }
> > +            }
> > +         }
> > +     dsyslog(LOG_INFO, "%d %d %d - %d %d - %d %d %d", begin, length, DaysToCheck, i, tx, startTime, t, stopTime);
> > +     }
> >    return active && startTime <= t && t < stopTime; // must stop *before* stopTime to allow adjacent timers
> >  }
> > ------------------------------------- snip -----------------------------------------
> 
> You can change the line
> 
>   if (active && startTime <= t && t < stopTime) {
> 
> in the above patch to
> 
>   if (!recording && active && startTime <= t && t < stopTime) {
> 
> in order to avoid excessive data in the log file. That way it
> only logs the first set of data, which is the one that interrest me.
> 
> Anybody else who ever experienced a timer not starting at the expected
> time or being executed at a completely wrong time should please also apply
> this patch and send me the log data if that happens.

In order to get even more data please change the 'dsyslog()' call to

  dsyslog(LOG_INFO, "%d %04d %04d %08X %d %d %d - %d %d - %d %d %d", channel, start, stop, day, begin, length, DaysToCheck, i, tx, startTime, t, stopTime);

Klaus
-- 
_______________________________________________________________

Klaus Schmidinger                       Phone: +49-8635-6989-10
CadSoft Computer GmbH                   Fax:   +49-8635-6989-40
Hofmark 2                               Email:   kls@cadsoft.de
D-84568 Pleiskirchen, Germany           URL:     www.cadsoft.de
_______________________________________________________________



Home | Main Index | Thread Index