diff options
Diffstat (limited to 'camera/QCamera2/stack/mm-camera-interface/src/mm_camera_thread.c')
| -rw-r--r-- | camera/QCamera2/stack/mm-camera-interface/src/mm_camera_thread.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/camera/QCamera2/stack/mm-camera-interface/src/mm_camera_thread.c b/camera/QCamera2/stack/mm-camera-interface/src/mm_camera_thread.c index 9f0dfe7..0e6c774 100644 --- a/camera/QCamera2/stack/mm-camera-interface/src/mm_camera_thread.c +++ b/camera/QCamera2/stack/mm-camera-interface/src/mm_camera_thread.c @@ -494,8 +494,8 @@ int32_t mm_camera_poll_thread_launch(mm_camera_poll_thread_t * poll_cb, poll_cb->poll_type = poll_type; - poll_cb->pfds[0] = 0; - poll_cb->pfds[1] = 0; + poll_cb->pfds[0] = -1; + poll_cb->pfds[1] = -1; rc = pipe(poll_cb->pfds); if(rc < 0) { CDBG_ERROR("%s: pipe open rc=%d\n", __func__, rc); @@ -544,10 +544,10 @@ int32_t mm_camera_poll_thread_release(mm_camera_poll_thread_t *poll_cb) } /* close pipe */ - if(poll_cb->pfds[0]) { + if(poll_cb->pfds[0] >= 0) { close(poll_cb->pfds[0]); } - if(poll_cb->pfds[1]) { + if(poll_cb->pfds[1] >= 0) { close(poll_cb->pfds[1]); } @@ -556,6 +556,8 @@ int32_t mm_camera_poll_thread_release(mm_camera_poll_thread_t *poll_cb) memset(poll_cb, 0, sizeof(mm_camera_poll_thread_t)); done: pthread_mutex_unlock(&constr_destr_lock); + poll_cb->pfds[0] = -1; + poll_cb->pfds[1] = -1; return rc; } |
