aboutsummaryrefslogtreecommitdiffstats
path: root/print.c
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2002-04-02 05:07:36 +0000
committerGuy Harris <guy@alum.mit.edu>2002-04-02 05:07:36 +0000
commit5f948e482c030c529e2066f5b83e3e42dc2062e0 (patch)
tree3012c124be4ed62643fc807fb19a819501a65442 /print.c
parent590c3c0f8c4e41ce0d5cd4d8a6092f7fe09c5539 (diff)
In the tree-printing code, we may be handed a leaf node, so don't
require that "fi->tree_type" be positive. svn path=/trunk/; revision=5084
Diffstat (limited to 'print.c')
-rw-r--r--print.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/print.c b/print.c
index d68465eae0..626b875e2c 100644
--- a/print.c
+++ b/print.c
@@ -1,7 +1,7 @@
/* print.c
* Routines for printing packet analysis trees.
*
- * $Id: print.c,v 1.44 2002/04/01 02:00:50 guy Exp $
+ * $Id: print.c,v 1.45 2002/04/02 05:07:36 guy Exp $
*
* Gilbert Ramirez <gram@alumni.rice.edu>
*
@@ -197,10 +197,12 @@ void proto_tree_print_node_text(GNode *node, gpointer data)
print_hex_data_text(pdata->fh, pd, fi->length, pdata->encoding);
}
- /* If we're printing all levels, or if this level is expanded,
- recurse into the subtree, if it exists. */
- g_assert(fi->tree_type >= 0 && fi->tree_type < num_tree_types);
- if (pdata->print_all_levels || tree_is_expanded[fi->tree_type]) {
+ /* If we're printing all levels, or if this node is one with a
+ subtree and its subtree is expanded, recurse into the subtree,
+ if it exists. */
+ g_assert(fi->tree_type >= -1 && fi->tree_type < num_tree_types);
+ if (pdata->print_all_levels ||
+ (fi->tree_type >= 0 && tree_is_expanded[fi->tree_type])) {
if (g_node_n_children(node) > 0) {
pdata->level++;
g_node_children_foreach(node, G_TRAVERSE_ALL,