[linux-dvb] problems and workaround when tuning to a channel with
DD enabled
Oliver Endriss
o.endriss at gmx.de
Wed Jun 8 15:26:27 CEST 2005
Wolfgang Rohdewald wrote:
> On Mittwoch 08 Juni 2005 12:54, Johannes Stezenbach wrote:
> > > If OSDSetBlock times out, -ETIMEDOUT is returned. Most other timeouts
> > > will return -1. Could this be made more consistent? Also, the return codes
> > > in <dvb/osd.h> don't match what the driver does. I don't know what should
> > > be done.
> >
> > We better ask Klaus Schmidinger about this.
>
> Does he track this list? Or would you ask him? I might not be able to follow
> the discussion yet.
Usually he reads this list, too.
Anyway, since vdr does not check the return code (see dvbosd.c,
cDvbOsd:Cmd), you can probably return whatever you like. :D
> > Hm, I don't like this ret = 0 everyhwere, why no set ret = 0 by default?
>
> I also removed the initialization. Now the compiler warns if any
> case branch does not set ret, making it more difficult to forget
> setting it wherever it is needed.
>
> I thought about this:
>
> case A:
> case B:
> case C:
> ret = 0;
> goto out;
>
> but I was not sure whether this reordering would be too intrusive for a
> first patch. If you don't object, I will do that. I could also add a label
> out0. The BUG() is probably good anyway to ensure no break is used
> accidentally.
>
> } /* end of switch */
> BUG(); /* we should never get here */
>
> out0:
> ret = 0;
> out:
> ...
I would remove the 'out' label completely. The way it is used is bad
programming style. It's not required, a simple 'break' will do.
What are OSD_SetTrans, OSD_GetPixel, OSD_Query and OSD_Test good for?
Obviously they are not implemented and should be removed,
i.e. just return -EINVAL.
Oliver
--
--------------------------------------------------------
VDR Remote Plugin available at
http://www.escape-edv.de/endriss/vdr/
--------------------------------------------------------
More information about the linux-dvb
mailing list