

drivers/usb/input/hid-core.c: In function `fetch_item':
drivers/usb/input/hid-core.c:605: error: invalid lvalue in increment
drivers/usb/input/hid-core.c:612: error: invalid lvalue in increment



---

 drivers/usb/input/hid-core.c |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

diff -puN drivers/usb/input/hid-core.c~gcc-35-hid-core drivers/usb/input/hid-core.c
--- 25/drivers/usb/input/hid-core.c~gcc-35-hid-core	2004-01-23 23:07:41.000000000 -0800
+++ 25-akpm/drivers/usb/input/hid-core.c	2004-01-23 23:09:45.000000000 -0800
@@ -602,14 +602,16 @@ static u8 *fetch_item(__u8 *start, __u8 
 		case 2:
 			if ((end - start) < 2) 
 				return NULL;
-			item->data.u16 = le16_to_cpu(get_unaligned(((__u16*)start)++));
+			item->data.u16 = le16_to_cpu(get_unaligned((__u16*)start));
+			start = (__u8 *)((__u16 *)start + 1);
 			return start;
 
 		case 3:
 			item->size++;
 			if ((end - start) < 4)
 				return NULL;
-			item->data.u32 = le32_to_cpu(get_unaligned(((__u32*)start)++));
+			item->data.u32 = le32_to_cpu(get_unaligned((__u32*)start));
+			start = (__u8 *)((__u32 *)start + 1);
 			return start;
 	}
 

_
