diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/irmd/main.c | 7 | ||||
-rw-r--r-- | src/lib/shm_flow_set.c | 2 |
2 files changed, 8 insertions, 1 deletions
diff --git a/src/irmd/main.c b/src/irmd/main.c index 940432f1..1c928dca 100644 --- a/src/irmd/main.c +++ b/src/irmd/main.c @@ -1780,6 +1780,13 @@ static void irm_fini(void) prog_entry_destroy(e); } + list_for_each_safe(p, h, &irmd.proc_table) { + struct proc_entry * e = list_entry(p, struct proc_entry, next); + list_del(&e->next); + e->state = PROC_INIT; /* sanitizer already joined */ + proc_entry_destroy(e); + } + registry_destroy(&irmd.registry); pthread_rwlock_unlock(&irmd.reg_lock); diff --git a/src/lib/shm_flow_set.c b/src/lib/shm_flow_set.c index c19adaff..0f701b63 100644 --- a/src/lib/shm_flow_set.c +++ b/src/lib/shm_flow_set.c @@ -148,7 +148,7 @@ struct shm_flow_set * shm_flow_set_create(pid_t pid) if (set == NULL) goto fail_set; - set->pid = getpid(); + set->pid = pid; if (pthread_mutexattr_init(&mattr)) goto fail_mutexattr_init; |