diff options
author | Martin Kaiser <wireshark@kaiser.cx> | 2013-03-30 10:41:37 +0000 |
---|---|---|
committer | Martin Kaiser <wireshark@kaiser.cx> | 2013-03-30 10:41:37 +0000 |
commit | b3bad40c6075b8f68cd7ce747c5cb3a97bc638f7 (patch) | |
tree | e2acc4cbacfa5ea9c11ed24e021e79e2c73393cf /epan/dissectors/packet-dvb-sdt.c | |
parent | 252816444823f7e60ca91932d60289c7cab7ad65 (diff) |
use proto_mpeg_descriptor_loop_dissect() in the SDT descriptor loop
this takes private descriptors into account
svn path=/trunk/; revision=48650
Diffstat (limited to 'epan/dissectors/packet-dvb-sdt.c')
-rw-r--r-- | epan/dissectors/packet-dvb-sdt.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/epan/dissectors/packet-dvb-sdt.c b/epan/dissectors/packet-dvb-sdt.c index d28d2a9a25..0ec8c7d560 100644 --- a/epan/dissectors/packet-dvb-sdt.c +++ b/epan/dissectors/packet-dvb-sdt.c @@ -103,7 +103,7 @@ dissect_dvb_sdt(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) { guint offset = 0, length = 0; - guint descriptor_len, descriptor_end; + guint descriptor_len; guint16 svc_id; proto_item *ti; @@ -166,10 +166,7 @@ dissect_dvb_sdt(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) descriptor_len = tvb_get_ntohs(tvb, offset) & DVB_SDT_DESCRIPTORS_LOOP_LENGTH_MASK; offset += 2; - descriptor_end = offset + descriptor_len; - while (offset < descriptor_end) - offset += proto_mpeg_descriptor_dissect(tvb, offset, dvb_sdt_service_tree); - + offset += proto_mpeg_descriptor_loop_dissect(tvb, offset, descriptor_len, dvb_sdt_service_tree); } offset += packet_mpeg_sect_crc(tvb, pinfo, dvb_sdt_tree, 0, offset); |