From 15cf8612ebd577688d864e3dfef8c159409acdec Mon Sep 17 00:00:00 2001 From: x0rloser Date: Mon, 24 Jul 2023 22:35:17 +1000 Subject: [PATCH] btstack_hid_parser: fix report id matching logic of hid_descriptor --- src/btstack_hid_parser.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/btstack_hid_parser.c b/src/btstack_hid_parser.c index 3fb7d5f10..14832c0ca 100644 --- a/src/btstack_hid_parser.c +++ b/src/btstack_hid_parser.c @@ -441,11 +441,9 @@ int btstack_hid_get_report_size_for_id(int report_id, hid_report_type_t report_t current_report_id = item.item_value; break; case ReportCount: - if (current_report_id != report_id) break; report_count = item.item_value; break; case ReportSize: - if (current_report_id != report_id) break; report_size = item.item_value; break; default: @@ -472,12 +470,11 @@ int btstack_hid_get_report_size_for_id(int report_id, hid_report_type_t report_t } if (!valid_report_type) break; total_report_size += report_count * report_size; - report_size = 0; - report_count = 0; break; default: break; } + if (total_report_size > 0 && current_report_id != report_id) break; hid_descriptor_len -= item.item_size; hid_descriptor += item.item_size; }