X-Git-Url: https://git.lttng.org/?p=lttngtop.git;a=blobdiff_plain;f=src%2Fcursesdisplay.c;h=49ec23ce6f8d72169abdc18af7ac33dd60902e61;hp=b63fa9bce3dc32675aed27e5d6f6d1d27bae1785;hb=84c36c18637e2b02dd9a91646065f90e02eca660;hpb=b332d28fca0f56381a6f5458f5898ef4ffa0242f diff --git a/src/cursesdisplay.c b/src/cursesdisplay.c index b63fa9b..49ec23c 100644 --- a/src/cursesdisplay.c +++ b/src/cursesdisplay.c @@ -237,11 +237,21 @@ int process_selected(struct processtop *process) void update_selected_processes() { + int i; + struct processtop *stored_process; + if (process_selected(selected_process)) { - g_ptr_array_remove(selected_processes, selected_process); - print_log("Process removed"); + for (i = 0; i < selected_processes->len; i++) { + stored_process = g_ptr_array_index(selected_processes, i); + if (!stored_process) + return; + if (stored_process->tid == selected_process->tid) + g_ptr_array_remove(selected_processes, + stored_process); + print_log("Process removed"); + } } else { - g_ptr_array_add(selected_processes, selected_process); + g_ptr_array_add(selected_processes, selected_process); print_log("Process added"); } }