Just append the ": " to the generic NACK BLP item, don't replace its

text.

Don't put empty items into the bitfield tree.

Show the BLP field as hex, as it's a bitfield.

(What should *really* happen is that it should display each 1 bit in the
usual fashion, with the ".... ...1 .... ...." display, but have that bit
be an *integral* field with the appropriate PID for the NACKed packet -
i.e., display hf_rtcp_rtpfb_nack_pid, with the value
rtcp_rtpfb_nack_pid + i + 1, and with the bitfield stuff in the
displayed representation.)

svn path=/trunk/; revision=45155
This commit is contained in:
Guy Harris 2012-09-26 19:23:33 +00:00
parent 8dcfa4214c
commit 0ac06207ce
1 changed files with 3 additions and 8 deletions

View File

@ -819,10 +819,9 @@ dissect_rtcp_rtpfb_nack( tvbuff_t *tvb, int offset, proto_tree *rtcp_tree, proto
offset += 2;
ti = proto_tree_add_item(rtcp_tree, hf_rtcp_rtpfb_nack_blp, tvb, offset, 2, ENC_BIG_ENDIAN);
proto_item_set_text(ti, "RTCP Transport Feedback NACK BLP: ");
proto_item_append_text(ti, ": ");
rtcp_rtpfb_nack_blp = tvb_get_ntohs(tvb, offset);
bitfield_tree = proto_item_add_subtree( ti, ett_rtcp_nack_blp);
bitfield_tree = proto_item_add_subtree(ti, ett_rtcp_nack_blp);
nack_num_frames_lost = 1;
if (rtcp_rtpfb_nack_blp) {
for (i = 0; i < 16; i ++) {
@ -834,10 +833,6 @@ dissect_rtcp_rtpfb_nack( tvbuff_t *tvb, int offset, proto_tree *rtcp_tree, proto
proto_item_append_text(ti, "%d ", rtcp_rtpfb_nack_pid + i + 1);
nack_num_frames_lost ++;
}
else {
proto_tree_add_text(bitfield_tree, tvb, offset, 2, "");
}
}
} else {
proto_item_set_text(ti, "0 (No additional frames lost)");
@ -4544,7 +4539,7 @@ proto_register_rtcp(void)
"RTCP Transport Feedback NACK BLP",
"rtcp.rtpfb.nack.blp",
FT_UINT16,
BASE_DEC,
BASE_HEX,
NULL,
0x0,
NULL, HFILL