svn commit: r212335 - head/usr.sbin/bluetooth/bthidd

Maksim Yevmenkin emax at FreeBSD.org
Wed Sep 8 20:00:28 UTC 2010


Author: emax
Date: Wed Sep  8 20:00:27 2010
New Revision: 212335
URL: http://svn.freebsd.org/changeset/base/212335

Log:
  Make sure to only pickup hid_input items when parsing input reports.
  As it turns out, libusbhid(3) also picks up hic_collection items even
  though we explicitly requested hid_input items only.
  
  Tested by:	Buganini < buganini at gmail dot com >
  MFC after:	1 week

Modified:
  head/usr.sbin/bluetooth/bthidd/hid.c

Modified: head/usr.sbin/bluetooth/bthidd/hid.c
==============================================================================
--- head/usr.sbin/bluetooth/bthidd/hid.c	Wed Sep  8 20:00:15 2010	(r212334)
+++ head/usr.sbin/bluetooth/bthidd/hid.c	Wed Sep  8 20:00:27 2010	(r212335)
@@ -160,7 +160,8 @@ hid_interrupt(bthid_session_p s, uint8_t
 
 	for (d = hid_start_parse(hid_device->desc, 1 << hid_input, -1);
 	     hid_get_item(d, &h) > 0; ) {
-		if ((h.flags & HIO_CONST) || (h.report_ID != report_id))
+		if ((h.flags & HIO_CONST) || (h.report_ID != report_id) ||
+		    (h.kind != hid_input))
 			continue;
 
 		page = HID_PAGE(h.usage);


More information about the svn-src-all mailing list