diff options
Diffstat (limited to 'tools/lib/traceevent/event-parse.c')
| -rw-r--r-- | tools/lib/traceevent/event-parse.c | 9 | 
1 files changed, 6 insertions, 3 deletions
diff --git a/tools/lib/traceevent/event-parse.c b/tools/lib/traceevent/event-parse.c index 47264b4652b..f2989c525e4 100644 --- a/tools/lib/traceevent/event-parse.c +++ b/tools/lib/traceevent/event-parse.c @@ -2602,6 +2602,9 @@ find_func_handler(struct pevent *pevent, char *func_name)  {  	struct pevent_function_handler *func; +	if (!pevent) +		return NULL; +  	for (func = pevent->func_handlers; func; func = func->next) {  		if (strcmp(func->name, func_name) == 0)  			break; @@ -4938,6 +4941,9 @@ enum pevent_errno __pevent_parse_format(struct event_format **eventp,  		goto event_alloc_failed;  	} +	/* Add pevent to event so that it can be referenced */ +	event->pevent = pevent; +  	ret = event_read_format(event);  	if (ret < 0) {  		ret = PEVENT_ERRNO__READ_FORMAT_FAILED; @@ -5041,9 +5047,6 @@ enum pevent_errno pevent_parse_event(struct pevent *pevent, const char *buf,  	if (event == NULL)  		return ret; -	/* Add pevent to event so that it can be referenced */ -	event->pevent = pevent; -  	if (add_event(pevent, event)) {  		ret = PEVENT_ERRNO__MEM_ALLOC_FAILED;  		goto event_add_failed;  |