[vdr] flooded log when using status plugin

Joachim Wilke joachim.wilke at gmail.com
Sun Nov 5 17:59:35 CET 2006


Hello everyone,

when using the status plugin and tuning to a channel without an epg
schedule, the syslog gets flooded with some hundreds of OsdProgramme
messages:

Nov  3 20:16:17 vdr vdr: [4676] status: cStatusTest::OsdChannel 2079
TechniSat Kanal 50
Nov  3 20:16:17 vdr vdr: [4676] status: cStatusTest::OsdProgramme
Nov  3 20:16:17 vdr vdr: [4676] 01:00 (null)
Nov  3 20:16:17 vdr vdr: [4676]       (null)
Nov  3 20:16:17 vdr vdr: [4676] 01:00 (null)
Nov  3 20:16:17 vdr vdr: [4676]       (null)
Nov  3 20:16:17 vdr vdr: [4676] status: cStatusTest::OsdProgramme
Nov  3 20:16:17 vdr vdr: [4676] 01:00 (null)
Nov  3 20:16:17 vdr vdr: [4676]       (null)
Nov  3 20:16:17 vdr vdr: [4676] 01:00 (null)
Nov  3 20:16:17 vdr vdr: [4676]       (null)
[...]

These messages are caused by the else part in
cDisplayChannel::DisplayInfo in menu.c:

void cDisplayChannel::DisplayInfo(void)
{
  if (withInfo && channel) {
     cSchedulesLock SchedulesLock;
     const cSchedules *Schedules = cSchedules::Schedules(SchedulesLock);
     if (Schedules) {
        const cSchedule *Schedule = Schedules->GetSchedule(channel);
        if (Schedule) {
           const cEvent *Present = Schedule->GetPresentEvent();
           const cEvent *Following = Schedule->GetFollowingEvent();
           if (Present != lastPresent || Following != lastFollowing) {
              SetTrackDescriptions(channel->Number());
              displayChannel->SetEvents(Present, Following);
              cStatus::MsgOsdProgramme(Present ? Present->StartTime()
: 0, Present ? Present->Title() : NULL, Present ? Present->ShortText()
              lastPresent = Present;
              lastFollowing = Following;
           }
        }
        else
          cStatus::MsgOsdProgramme(0, NULL, NULL, 0, NULL, NULL);
    }
  }
}

I would suggest removing the else part, because this MsgOsdProgramme
call provides no information. As an alternative it should be limited
to one call, similar to the check "(Present != lastPresent ||
Following != lastFollowing)" some lines above.

Regards,
Joachim.



More information about the vdr mailing list