diff --git a/CONTRIBUTORS b/CONTRIBUTORS index 4147eab2..4624d605 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -563,6 +563,8 @@ Helmut Auer there are too many levels of symbolic links for reporting that an attempt to call a plugin's main menu function while a message is being displayed didn't work + for reporting a problem with the "Press any key on the RC unit" step when learning + LIRC remote control codes Jeremy Hall for fixing an incomplete initialization of the filter parameters in eit.c diff --git a/HISTORY b/HISTORY index addcfbb8..62c47e8a 100644 --- a/HISTORY +++ b/HISTORY @@ -4688,7 +4688,7 @@ Video Disk Recorder Revision History - Updated the Italian OSD texts (thanks to Nino Gerbino and Antonio Ospite). - Updated the Estonian OSD texts (thanks to Arthur Konovalov). -2006-05-07: Version 1.4.0-1 +2006-05-12: Version 1.4.0-1 - Updated 'S110W' in 'sources.conf'. - Adjusted the 'runvdr' script so that the user can fill in the functions to @@ -4708,3 +4708,5 @@ Video Disk Recorder Revision History - If VPS timers are active, their events are now being kept up to date if there are any free devices available. - Fixed the character #207 in fontosd for iso8859-2 (thanks to Vladimír Bárta). +- Fixed handling unknown codes when learning LIRC remote control codes (reported + by Helmut Auer). diff --git a/remote.c b/remote.c index c0b92867..a4277401 100644 --- a/remote.c +++ b/remote.c @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: remote.c 1.50 2006/04/17 08:58:28 kls Exp $ + * $Id: remote.c 1.51 2006/05/12 12:40:15 kls Exp $ */ #include "remote.h" @@ -182,11 +182,11 @@ eKeys cRemote::Get(int WaitMs, char **UnknownCode) repeatTimeout.Set(REPEATTIMEOUT); return k; } - else if (!WaitMs || !keyPressed.TimedWait(mutex, WaitMs) && repeatTimeout.TimedOut()) { - if (learning && UnknownCode) { - *UnknownCode = unknownCode; - unknownCode = NULL; - } + else if (!WaitMs || !keyPressed.TimedWait(mutex, WaitMs) && repeatTimeout.TimedOut()) + return kNone; + else if (learning && UnknownCode && unknownCode) { + *UnknownCode = unknownCode; + unknownCode = NULL; return kNone; } }