From 5fe9706b823cd441703239ece020e517d722d88c Mon Sep 17 00:00:00 2001 From: dimitri staessens Date: Sun, 15 May 2016 15:43:47 +0200 Subject: lib: cleanup file descriptors for shared memory cleanup of file descriptors for the shared memory. also adds a missing NULL check and some invalidation in dev.c --- src/lib/shm_ap_rbuff.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/lib/shm_ap_rbuff.c') diff --git a/src/lib/shm_ap_rbuff.c b/src/lib/shm_ap_rbuff.c index 0524a96c..71a7e733 100644 --- a/src/lib/shm_ap_rbuff.c +++ b/src/lib/shm_ap_rbuff.c @@ -180,6 +180,9 @@ void shm_ap_rbuff_close(struct shm_ap_rbuff * rb) return; } + if (close(rb->fd) < 0) + LOG_DBGF("Couldn't close shared memory."); + if (munmap(rb->shm_base, SHM_RBUFF_FILE_SIZE) == -1) LOG_DBGF("Couldn't unmap shared memory."); @@ -200,6 +203,9 @@ void shm_ap_rbuff_destroy(struct shm_ap_rbuff * rb) return; } + if (close(rb->fd) < 0) + LOG_DBGF("Couldn't close shared memory."); + sprintf(fn, SHM_AP_RBUFF_PREFIX "%d", rb->pid); if (munmap(rb->shm_base, SHM_RBUFF_FILE_SIZE) == -1) -- cgit v1.2.3