If the proto_tree_add_text string is just "%s", assume it won't be converted (it's usually a header that has the same field filterable in its subtree)

svn path=/trunk/; revision=51505
This commit is contained in:
Michael Mann 2013-08-24 01:38:43 +00:00
parent 6614f284b3
commit e123d27ca9
1 changed files with 14 additions and 6 deletions

View File

@ -399,13 +399,21 @@ sub generate_hfs {
$proto_tree_item[8] =~ s/\"//;
$proto_tree_item[8] = trim($proto_tree_item[8]);
#hf variable name
$proto_tree_item[3] = sprintf("hf_%s_%s", $protabbrev, lc($proto_tree_item[8]));
$proto_tree_item[3] =~ s/\s+|-|:/_/g;
if ($proto_tree_item[8] eq "%s\"") {
#assume proto_tree_add_text will not be converted
$proto_tree_item[0] = 0;
$proto_tree_item[1] = 0;
$proto_tree_item[3] = sprintf("hf_%s_", $protabbrev);
$proto_tree_item[10] = sprintf("%s.", $protabbrev);
} else {
#hf variable name
$proto_tree_item[3] = sprintf("hf_%s_%s", $protabbrev, lc($proto_tree_item[8]));
$proto_tree_item[3] =~ s/\s+|-|:/_/g;
#field abbreviated name
$proto_tree_item[10] = sprintf("%s.%s", $protabbrev, lc($proto_tree_item[8]));
$proto_tree_item[10] =~ s/\s+|-|:/_/g;
#field abbreviated name
$proto_tree_item[10] = sprintf("%s.%s", $protabbrev, lc($proto_tree_item[8]));
$proto_tree_item[10] =~ s/\s+|-|:/_/g;
}
#VALS
if ($str =~ /val_to_str(_const)?\(\s*tvb_get_[^\(]*\([^\,]*,[^\)]*\)\s*\,\s*([^\,]*)\s*\,\s*([^\)]*)\)/) {