diff options
| -rw-r--r-- | parse-events.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/parse-events.c b/parse-events.c index 53087d9..672fd84 100644 --- a/parse-events.c +++ b/parse-events.c | |||
| @@ -1445,6 +1445,7 @@ static void set_op_prio(struct print_arg *arg) | |||
| 1445 | arg->op.prio = get_op_prio(arg->op.op); | 1445 | arg->op.prio = get_op_prio(arg->op.op); |
| 1446 | } | 1446 | } |
| 1447 | 1447 | ||
| 1448 | /* Note, *tok does not get freed, but will most likely be saved */ | ||
| 1448 | static enum event_type | 1449 | static enum event_type |
| 1449 | process_op(struct event_format *event, struct print_arg *arg, char **tok) | 1450 | process_op(struct event_format *event, struct print_arg *arg, char **tok) |
| 1450 | { | 1451 | { |
| @@ -1480,7 +1481,8 @@ process_op(struct event_format *event, struct print_arg *arg, char **tok) | |||
| 1480 | right = alloc_arg(); | 1481 | right = alloc_arg(); |
| 1481 | arg->op.right = right; | 1482 | arg->op.right = right; |
| 1482 | 1483 | ||
| 1483 | free_token(token); | 1484 | /* do not free the token, it belongs to an op */ |
| 1485 | *tok = NULL; | ||
| 1484 | type = process_arg(event, right, tok); | 1486 | type = process_arg(event, right, tok); |
| 1485 | 1487 | ||
| 1486 | } else if (strcmp(token, "?") == 0) { | 1488 | } else if (strcmp(token, "?") == 0) { |
