aboutsummaryrefslogtreecommitdiffstats
path: root/epan
diff options
context:
space:
mode:
authorStig Bjørlykke <stig@bjorlykke.org>2008-02-22 12:06:29 +0000
committerStig Bjørlykke <stig@bjorlykke.org>2008-02-22 12:06:29 +0000
commit33524cdd4814bfcf45a52b0d8dd8295226d86d72 (patch)
tree3f7b1dfd017a498c6096271c1d4ea246cbe5ef2c /epan
parent67aa6856de46652b04e17dc337632fb49395d0ac (diff)
Some custom column enhancements:
Use the value_string if defined for integer and boolean values. svn path=/trunk/; revision=24418
Diffstat (limited to 'epan')
-rw-r--r--epan/proto.c18
1 files changed, 16 insertions, 2 deletions
diff --git a/epan/proto.c b/epan/proto.c
index 133d02fab5..651c2e1aad 100644
--- a/epan/proto.c
+++ b/epan/proto.c
@@ -2649,7 +2649,17 @@ proto_tree_set_uint(field_info *fi, guint32 value)
}
}
- col_custom_set_fstr(hfinfo->abbrev, "%u", integer);
+ if (hfinfo->type == FT_BOOLEAN) {
+ const true_false_string *tfstring = &tfs_true_false;
+ if (hfinfo->strings) {
+ tfstring = (const struct true_false_string*) hfinfo->strings;
+ }
+ col_custom_set_fstr(hfinfo->abbrev, "%s", value ? tfstring->true_string : tfstring->false_string);
+ } else if (hfinfo->strings) {
+ col_custom_set_fstr(hfinfo->abbrev, "%s", val_to_str(integer, cVALS(hfinfo->strings), "Unknown"));
+ } else {
+ col_custom_set_fstr(hfinfo->abbrev, "%d", integer);
+ }
fvalue_set_uinteger(&fi->value, integer);
}
@@ -2815,7 +2825,11 @@ proto_tree_set_int(field_info *fi, gint32 value)
}
}
- col_custom_set_fstr(hfinfo->abbrev, "%d", integer);
+ if (hfinfo->strings) {
+ col_custom_set_fstr(hfinfo->abbrev, "%s", val_to_str(integer, cVALS(hfinfo->strings), "Unknown"));
+ } else {
+ col_custom_set_fstr(hfinfo->abbrev, "%d", integer);
+ }
fvalue_set_sinteger(&fi->value, integer);
}