On 08/26/09 06:52, Timothy D. Lenz wrote: >>From the auther of the atsc plugin: > > Yes, that's from the plugin. To fix it, find the following line in VDR's channels.c > > Code: > dsyslog("changing pids of channel %d from %d+%d=%d:%s:%s:%d to %d+%d=%d:%s:%s:%d", Number(), vpid, ppid, vtype, OldApidsBuf, > OldSpidsBuf, tpid, Vpid, Ppid, Vtype, NewApidsBuf, NewSpidsBuf, Tpid); > > and change it to > > Code: > if (Number()) > dsyslog("changing pids of channel %d from %d+%d=%d:%s:%s:%d to %d+%d=%d:%s:%s:%d", Number(), vpid, ppid, vtype, OldApidsBuf, > OldSpidsBuf, tpid, Vpid, Ppid, Vtype, NewApidsBuf, NewSpidsBuf, Tpid); Looks like there were several places where a check for Number() was missing. The attached patch fixes this. Klaus
--- channels.c 2009/08/16 15:08:49 2.7 +++ channels.c 2009/08/30 11:25:50 @@ -508,7 +508,8 @@ q = NewSpidsBuf; q += IntArrayToString(q, Spids, 10, SLangs); *q = 0; - dsyslog("changing pids of channel %d from %d+%d=%d:%s:%s:%d to %d+%d=%d:%s:%s:%d", Number(), vpid, ppid, vtype, OldApidsBuf, OldSpidsBuf, tpid, Vpid, Ppid, Vtype, NewApidsBuf, NewSpidsBuf, Tpid); + if (Number()) + dsyslog("changing pids of channel %d from %d+%d=%d:%s:%s:%d to %d+%d=%d:%s:%s:%d", Number(), vpid, ppid, vtype, OldApidsBuf, OldSpidsBuf, tpid, Vpid, Ppid, Vtype, NewApidsBuf, NewSpidsBuf, Tpid); vpid = Vpid; ppid = Ppid; vtype = Vtype; @@ -558,7 +559,8 @@ char NewCaIdsBuf[MAXCAIDS * 5 + 10]; IntArrayToString(OldCaIdsBuf, caids, 16); IntArrayToString(NewCaIdsBuf, CaIds, 16); - dsyslog("changing caids of channel %d from %s to %s", Number(), OldCaIdsBuf, NewCaIdsBuf); + if (Number()) + dsyslog("changing caids of channel %d from %s to %s", Number(), OldCaIdsBuf, NewCaIdsBuf); for (int i = 0; i <= MAXCAIDS; i++) { // <= to copy the terminating 0 caids[i] = CaIds[i]; if (!CaIds[i]) @@ -574,7 +576,7 @@ if (Level > 0) { modification |= CHANNELMOD_CA; Channels.SetModified(); - if (Level > 1) + if (Number() && Level > 1) dsyslog("changing ca descriptors of channel %d", Number()); } } @@ -622,7 +624,8 @@ } else q += sprintf(q, " none"); - dsyslog(buffer); + if (Number()) + dsyslog(buffer); } void cChannel::SetRefChannel(cChannel *RefChannel)
_______________________________________________ vdr mailing list vdr@xxxxxxxxxxx http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr