<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">
From: Patrick Boettcher &lt;pb@linuxtv.org&gt;

o fixed usage of the correct number of events in keymapping-array
o better place for return

Signed-off-by: Patrick Boettcher &lt;pb@linuxtv.org&gt;
Signed-off-by: Johannes Stezenbach &lt;js@linuxtv.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
---

 drivers/media/dvb/dvb-usb/dvb-usb-remote.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff -puN drivers/media/dvb/dvb-usb/dvb-usb-remote.c~dvb-usb-ir-input-fixes drivers/media/dvb/dvb-usb/dvb-usb-remote.c
--- 25/drivers/media/dvb/dvb-usb/dvb-usb-remote.c~dvb-usb-ir-input-fixes	Mon Jun 27 15:37:27 2005
+++ 25-akpm/drivers/media/dvb/dvb-usb/dvb-usb-remote.c	Mon Jun 27 15:37:27 2005
@@ -39,7 +39,7 @@ static void dvb_usb_read_remote_control(
 			d-&gt;last_event = event;
 		case REMOTE_KEY_REPEAT:
 			deb_rc("key repeated\n");
-			input_event(&amp;d-&gt;rc_input_dev, EV_KEY, event, 1);
+			input_event(&amp;d-&gt;rc_input_dev, EV_KEY, d-&gt;last_event, 1);
 			input_event(&amp;d-&gt;rc_input_dev, EV_KEY, d-&gt;last_event, 0);
 			input_sync(&amp;d-&gt;rc_input_dev);
 			break;
@@ -160,12 +160,12 @@ int dvb_usb_nec_rc_key_to_event(struct d
 				break;
 			}
 			/* See if we can match the raw key code. */
-			for (i = 0; i &lt; sizeof(keymap)/sizeof(struct dvb_usb_rc_key); i++)
+			for (i = 0; i &lt; d-&gt;props.rc_key_map_size; i++)
 				if (keymap[i].custom == keybuf[1] &amp;&amp;
 					keymap[i].data == keybuf[3]) {
 					*event = keymap[i].event;
 					*state = REMOTE_KEY_PRESSED;
-					break;
+					return 0;
 				}
 			deb_err("key mapping failed - no appropriate key found in keymapping\n");
 			break;
_
</pre></body></html>