diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/fuse_mt.c | 2 | ||||
-rw-r--r-- | lib/helper.c | 1 |
2 files changed, 3 insertions, 0 deletions
diff --git a/lib/fuse_mt.c b/lib/fuse_mt.c index 89c0fc8..71196a9 100644 --- a/lib/fuse_mt.c +++ b/lib/fuse_mt.c @@ -125,6 +125,8 @@ void __fuse_loop_mt(struct fuse *f, fuse_processor_t proc, void *data) for (i = 1; i < f->numworker; i++) pthread_cancel(w->threads[i]); pthread_mutex_unlock(&f->lock); + pthread_key_delete(f->context_key); + free(w); } void fuse_loop_mt(struct fuse *f) diff --git a/lib/helper.c b/lib/helper.c index d597c46..76b6eb7 100644 --- a/lib/helper.c +++ b/lib/helper.c @@ -56,6 +56,7 @@ static void set_one_signal_handler(int signal, void (*handler)(int)) struct sigaction sa; struct sigaction old_sa; + memset(&sa, 0, sizeof(struct sigaction)); sa.sa_handler = handler; sigemptyset(&(sa.sa_mask)); sa.sa_flags = 0; |