aboutsummaryrefslogtreecommitdiff
path: root/display_args.c
diff options
context:
space:
mode:
authorRichard Kettlewell <rjk@nchiper.com>2006-02-16 01:10:00 +0100
committerIan Wienand <ianw@debian.org>2006-02-16 01:10:00 +0100
commit5df6269b86c84f9e5d311aeb142cfe85f8db8db8 (patch)
tree75ba8a3f2b4cdf76f93b53d54a1b4465aae53ade /display_args.c
parentdab12d48f97776c2e35f6c6e25142df6daf8f7e8 (diff)
downloadltrace-5df6269b86c84f9e5d311aeb142cfe85f8db8db8.tar.gz
update to handle variable length strings arguments
Diffstat (limited to 'display_args.c')
-rw-r--r--display_args.c20
1 files changed, 6 insertions, 14 deletions
diff --git a/display_args.c b/display_args.c
index 87fd084..9a988e1 100644
--- a/display_args.c
+++ b/display_args.c
@@ -17,11 +17,13 @@ static int display_unknown(enum tof type, struct process * proc, int arg_num);
static int display_format(enum tof type, struct process * proc, int arg_num);
int
-display_arg(enum tof type, struct process * proc, int arg_num, enum arg_type at) {
+display_arg(enum tof type, struct process * proc, int arg_num, const struct complete_arg_type *at) {
int tmp;
long arg;
- switch(at) {
+ if(!at)
+ return display_unknown(type, proc, arg_num);
+ switch(at->at) {
case ARGTYPE_VOID:
return 0;
case ARGTYPE_INT:
@@ -50,18 +52,8 @@ display_arg(enum tof type, struct process * proc, int arg_num, enum arg_type at)
return display_format(type, proc, arg_num);
case ARGTYPE_STRING:
return display_string(type, proc, arg_num);
- case ARGTYPE_STRING0:
- return display_stringN(0, type, proc, arg_num);
- case ARGTYPE_STRING1:
- return display_stringN(1, type, proc, arg_num);
- case ARGTYPE_STRING2:
- return display_stringN(2, type, proc, arg_num);
- case ARGTYPE_STRING3:
- return display_stringN(3, type, proc, arg_num);
- case ARGTYPE_STRING4:
- return display_stringN(4, type, proc, arg_num);
- case ARGTYPE_STRING5:
- return display_stringN(5, type, proc, arg_num);
+ case ARGTYPE_STRINGN:
+ return display_stringN(at->argno, type, proc, arg_num);
case ARGTYPE_UNKNOWN:
default:
return display_unknown(type, proc, arg_num);