aboutsummaryrefslogtreecommitdiffstats
path: root/epan
diff options
context:
space:
mode:
authorRonnie Sahlberg <ronnie_sahlberg@ozemail.com.au>2003-11-25 14:10:27 +0000
committerRonnie Sahlberg <ronnie_sahlberg@ozemail.com.au>2003-11-25 14:10:27 +0000
commitfec720051f044d7e2a3b264615751b6d9b2f38ee (patch)
tree89fba6e39b8832a39d2f09c3b4b575bfb7901541 /epan
parent9d88e58e5102d65a42d1f5ff4cc7fa9c3536a3dc (diff)
create a FIELD_INFO_NEW for consistency
svn path=/trunk/; revision=9086
Diffstat (limited to 'epan')
-rw-r--r--epan/proto.c30
1 files changed, 16 insertions, 14 deletions
diff --git a/epan/proto.c b/epan/proto.c
index a032769e89..c288749107 100644
--- a/epan/proto.c
+++ b/epan/proto.c
@@ -1,7 +1,7 @@
/* proto.c
* Routines for protocol tree
*
- * $Id: proto.c,v 1.111 2003/11/25 14:07:44 sahlberg Exp $
+ * $Id: proto.c,v 1.112 2003/11/25 14:10:27 sahlberg Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@@ -159,6 +159,20 @@ static field_info *field_info_tmp=NULL;
#define FREE_FIELD_INFO(fi) \
fi->ptr_u.next=field_info_free_list; \
field_info_free_list=fi;
+#define FIELD_INFO_NEW(fi) \
+ if(!field_info_free_list){ \
+ int i; \
+ field_info *pfi; \
+ pfi=g_malloc(INITIAL_NUM_FIELD_INFO*sizeof(field_info));\
+ for(i=0;i<INITIAL_NUM_FIELD_INFO;i++){ \
+ field_info *tmpfi; \
+ tmpfi=&pfi[i]; \
+ tmpfi->ptr_u.next=field_info_free_list; \
+ field_info_free_list=tmpfi; \
+ } \
+ } \
+ fi=field_info_free_list; \
+ field_info_free_list=fi->ptr_u.next;
@@ -1920,19 +1934,7 @@ alloc_field_info(proto_tree *tree, int hfindex, tvbuff_t *tvb, gint start,
}
}
- if(!field_info_free_list){
- int i;
- field_info *pfi;
- pfi=g_malloc(INITIAL_NUM_FIELD_INFO*sizeof(field_info));
- for(i=0;i<INITIAL_NUM_FIELD_INFO;i++){
- field_info *tmpfi;
- tmpfi=&pfi[i];
- tmpfi->ptr_u.next=field_info_free_list;
- field_info_free_list=tmpfi;
- }
- }
- fi=field_info_free_list;
- field_info_free_list=fi->ptr_u.next;
+ FIELD_INFO_NEW(fi);
fi->ptr_u.hfinfo = hfinfo;
fi->start = start;