diff options
Diffstat (limited to 'tools/perf/util/machine.c')
| -rw-r--r-- | tools/perf/util/machine.c | 4 | 
1 files changed, 3 insertions, 1 deletions
diff --git a/tools/perf/util/machine.c b/tools/perf/util/machine.c index 94de3e48b490..1bca3a9f2b16 100644 --- a/tools/perf/util/machine.c +++ b/tools/perf/util/machine.c @@ -389,7 +389,6 @@ static struct thread *__machine__findnew_thread(struct machine *machine,  	if (th != NULL) {  		rb_link_node(&th->rb_node, parent, p);  		rb_insert_color(&th->rb_node, &machine->threads); -		machine->last_match = th;  		/*  		 * We have to initialize map_groups separately @@ -400,9 +399,12 @@ static struct thread *__machine__findnew_thread(struct machine *machine,  		 * leader and that would screwed the rb tree.  		 */  		if (thread__init_map_groups(th, machine)) { +			rb_erase(&th->rb_node, &machine->threads);  			thread__delete(th);  			return NULL;  		} + +		machine->last_match = th;  	}  	return th;  |