forked from osmocom/wireshark
X11: Use proto_tree_add_bitmask for generated bitmasks
Change-Id: Idc95500b74452911117be8903fe0bde0c8a6fefa Reviewed-on: https://code.wireshark.org/review/21173 Reviewed-by: Michael Mann <mmann78@netscape.net> Petri-Dish: Michael Mann <mmann78@netscape.net> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Anders Broman <a.broman58@gmail.com>
This commit is contained in:
parent
8fb828ff0c
commit
85d08e58cc
File diff suppressed because it is too large
Load Diff
|
@ -811,19 +811,17 @@ sub dissect_element($$$$$;$$)
|
|||
if ($refref->{field}{$fieldname}) {
|
||||
say $impl $indent."f_$fieldname = $get(tvb, *offsetp);";
|
||||
}
|
||||
my $bitmask_field = $fieldname . "_bits";
|
||||
say $impl $indent."{";
|
||||
say $impl $indent." proto_item *ti = proto_tree_add_item(t, $regname, tvb, *offsetp, $size, $encoding);";
|
||||
say $impl $indent." proto_tree *bitmask_tree = proto_item_add_subtree(ti, ett_x11_rectangle);";
|
||||
|
||||
my $bytesize = $info->{'size'};
|
||||
my $byteencoding = $info->{'encoding'};
|
||||
say $impl $indent." const int* $bitmask_field [] = {";
|
||||
my $bit = $enum{$enum_name{$e->att('mask')}}{bit};
|
||||
for my $val (sort { $a <=> $b } keys %$bit) {
|
||||
my $item = $regname . '_mask_' . $$bit{$val};
|
||||
|
||||
say $impl "$indent proto_tree_add_item(bitmask_tree, $item, tvb, *offsetp, $bytesize, $byteencoding);";
|
||||
say $impl "$indent$indent&$item,";
|
||||
}
|
||||
say $impl $indent." };";
|
||||
|
||||
say $impl $indent." proto_tree_add_bitmask(t, tvb, *offsetp, $regname, ett_x11_rectangle, $bitmask_field, $encoding);";
|
||||
say $impl $indent."}";
|
||||
say $impl $indent."*offsetp += $size;";
|
||||
} else {
|
||||
|
|
Loading…
Reference in New Issue