diff options
author | Evan Huus <eapache@gmail.com> | 2013-11-05 13:17:55 +0000 |
---|---|---|
committer | Evan Huus <eapache@gmail.com> | 2013-11-05 13:17:55 +0000 |
commit | 105150400530a4b23f1a0d06da0824ca18ff3221 (patch) | |
tree | e26fe83429f1597f65a885a7c6b56991e6c1ab91 /epan/dissectors/packet-rtp.c | |
parent | bb362a80598efbd7093799abc0ff2a7689e3cf5b (diff) |
From Michael Labedzki, call data dissector instead if handle is NULL.
Fixes https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9379
svn path=/trunk/; revision=53087
Diffstat (limited to 'epan/dissectors/packet-rtp.c')
-rw-r--r-- | epan/dissectors/packet-rtp.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/epan/dissectors/packet-rtp.c b/epan/dissectors/packet-rtp.c index 1f4b04375d..30ffef3774 100644 --- a/epan/dissectors/packet-rtp.c +++ b/epan/dissectors/packet-rtp.c @@ -1144,7 +1144,10 @@ process_rtp_payload(tvbuff_t *newtvb, packet_info *pinfo, proto_tree *tree, } nexttvb = tvb_new_subset_remaining(newtvb, suboffset); - call_dissector(p_conv_data->bta2dp_info->codec_dissector, nexttvb, pinfo, tree); + if (p_conv_data->bta2dp_info->codec_dissector) + call_dissector(p_conv_data->bta2dp_info->codec_dissector, nexttvb, pinfo, tree); + else + call_dissector(data_handle, nexttvb, pinfo, tree); } else if (p_conv_data && p_conv_data->btvdp_info) { tvbuff_t *nexttvb; gint suboffset = 0; @@ -1158,7 +1161,10 @@ process_rtp_payload(tvbuff_t *newtvb, packet_info *pinfo, proto_tree *tree, } nexttvb = tvb_new_subset_remaining(newtvb, suboffset); - call_dissector(p_conv_data->btvdp_info->codec_dissector, nexttvb, pinfo, tree); + if (p_conv_data->btvdp_info->codec_dissector) + call_dissector(p_conv_data->btvdp_info->codec_dissector, nexttvb, pinfo, tree); + else + call_dissector(data_handle, nexttvb, pinfo, tree); } /* if we don't found, it is static OR could be set static from the preferences */ |