diff options
Diffstat (limited to 'epan/dissectors/packet-usb.c')
-rw-r--r-- | epan/dissectors/packet-usb.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/epan/dissectors/packet-usb.c b/epan/dissectors/packet-usb.c index 706d0e2008..9286a5087c 100644 --- a/epan/dissectors/packet-usb.c +++ b/epan/dissectors/packet-usb.c @@ -1103,8 +1103,9 @@ dissect_usb_interface_descriptor(packet_info *pinfo, proto_tree *parent_tree, tv if(item){ proto_item_set_len(item, len); } - if (offset != old_offset + len) { - /* unknown records */ + if (offset < old_offset+len) { + /* skip unknown records */ + offset = old_offset + len; } return offset; @@ -1227,8 +1228,9 @@ dissect_usb_endpoint_descriptor(packet_info *pinfo, proto_tree *parent_tree, tvb if(item){ proto_item_set_len(item, len); } - if (offset != old_offset + len) { - /* unknown records */ + if (offset < old_offset+len) { + /* skip unknown records */ + offset = old_offset + len; } return offset; |