Best forum for patch proposals

George <schlooden-nOGZe+/[email protected]> Mon, 10 Jun 2019 07:00:42 +0100
Newsgroups gmane.comp.hardware.lirc
Message-ID <[email protected]>
	Hi Lirc,

	I’ve been getting the current branch of ‘master’ for LIRC building + working for an Orange Pi Zero use-case. I’ve encountered and patched a few issues and would like to know the best place to share/discuss these? If it is this mailing list then I’ll fire away.

	The patch/problem summaries are:

	1) lib/release.c: release_time is only cleared on new input. This results in a 100% CPU spin loop in daemons/lircd.cpp for me (after receiving the first client-connected input) due to the clearing out of tv in mywaitfordata once release_time is passed (passing curl_poll a timeout of zero each iteration). My current fix is to clear release_time after it expires (though I put in a safety iteration of 10 loops of mywaitfordata before it is expired).

	2) Missed ‘arlm’ flag in daemons/lircd.cpp. When sending SEND_ONCE <remote> <key> <repeat>, I was getting occasional lockups with my client expecting a response and never receiving one. It seems that the arlm=1; can be missed, especially when the timer was set to the 10us mark. My fix was to increment/decrement arlm instead.

	3) plugins/default.c: Does not configure the rc device if it is a symlink. My fix was adding a readlink call which is used as ‘device’ instead, should it succeed.

	Thanks,
		- George