* Billy Biggs (vektor@...) wrote:
> Marcel (user04113@...):
>=20
> > * Billy Biggs (vektor@...) wrote:
> > > Marcel (user04113@...):
> > >=20
> > > > irexec misses several putton presses. the key has to be pressed
> > > > several times before the program reacts. the program reacts random=
ly
> > > > to button presses. please give us back native lirc support in tvti=
me.
> > >=20
> > > Why haven't you filed a similar bug against lirc?
> >=20
> > Because Debian's lirc is 1 year old and doesn't fully supports my remot=
e,
> > I'm using lirc 0.7.0-pre2 from CVS which does all the job just great.
> >=20
> > I don't use irexec anymore. Every application I use, XMMS, xawtv, motv,
> > mplayer, xine has native lirc support. Well actually, I used irexec wi=
th
> > XMMS before I finally found a plugin. Glad I did, irexec behaviour was
> > unreliable.
>=20
> If you're using a CVS version of lirc, why haven't you brought this up
> on the lirc mailing list? Looking at the last month or so on this list,
> I see nobody complaining about irexec being unreliable. Maybe there is
> some bug at your end with irexec? It may just be a simple bug.
>=20
> http://sourceforge.net/mailarchive/forum.php?forum=3Dlirc-list
>=20
> > > However, some people mentioned that irexec sucks and I guess I just
> > > didn't believe them - the app must be so simple, wtf does it do, use
> > > system() ? I guess it must. Why can't we just fix that?
> >=20
> > I don't know how it works, I can do a strace for you if you need one.
>=20
> Why don't you just look at the source code?
>=20
> Taking a look, irexec.c is only 120 lines of C code. As I suspected,
> it uses lirc_nextcode() to wait for events from lirc, then just calls
> system() for each command that it gets, which will wait until the
> command completes before continuing.
>=20
> If this is missing events from lirc, then maybe system() should be
> replaced with fork+exec? It would be a really simple patch, but now
> that I think about it, I don't see why this isn't working fine already.
>=20
Well, I'm not a C coder. It could take me all the week-end only to figure
out how it can be done. This would slow down the debugging process
considerably.
This is what I tried so far:
1 - "tvtime-command channel_down" flood. Success. Tvtime reacted to each
and every occurance. Promptly.
2 - Modified .lircrc to output "echo 1" on unused key BACK and "strace
irexec"
a) without tvtime loaded: irexec will react to commands unless I
try to flood it. In such a case, it will start to stack commands,
not executing them. Previsible behaviour.
b) with tvtime running: Same as in a) plus several misses: strace
showed nothing at all on missing commands, seemed the command never
reached irexec in the first place.
c) same as in b) but tvtime started with much lower priority: same
results as in b)
=46rom this moment on, I don't know whatelse to try.
> If there is a bug with how it reads events with lirc, it would also be a
> simple patch, so we should see what the lirc mailing list thinks.
I'm doing it right now.
|