summaryrefslogtreecommitdiff
path: root/mm-video-legacy/vidc/vdec/src/omx_vdec.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'mm-video-legacy/vidc/vdec/src/omx_vdec.cpp')
-rw-r--r--mm-video-legacy/vidc/vdec/src/omx_vdec.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/mm-video-legacy/vidc/vdec/src/omx_vdec.cpp b/mm-video-legacy/vidc/vdec/src/omx_vdec.cpp
index f47702d..4238a0c 100644
--- a/mm-video-legacy/vidc/vdec/src/omx_vdec.cpp
+++ b/mm-video-legacy/vidc/vdec/src/omx_vdec.cpp
@@ -437,7 +437,9 @@ PARAMETERS
RETURN VALUE
None.
========================================================================== */
-omx_vdec::omx_vdec(): m_state(OMX_StateInvalid),
+omx_vdec::omx_vdec(): msg_thread_id(0),
+ async_thread_id(0),
+ m_state(OMX_StateInvalid),
m_app_data(NULL),
m_inp_mem_ptr(NULL),
m_out_mem_ptr(NULL),
@@ -582,9 +584,13 @@ omx_vdec::~omx_vdec()
m_pipe_in = -1;
m_pipe_out = -1;
DEBUG_PRINT_HIGH("Waiting on OMX Msg Thread exit");
- pthread_join(msg_thread_id,NULL);
+ if (msg_thread_id != 0) {
+ pthread_join(msg_thread_id,NULL);
+ }
DEBUG_PRINT_HIGH("Waiting on OMX Async Thread exit");
- pthread_join(async_thread_id,NULL);
+ if (async_thread_id != 0) {
+ pthread_join(async_thread_id,NULL);
+ }
pthread_mutex_destroy(&m_lock);
pthread_mutex_destroy(&c_lock);
sem_destroy(&m_cmd_lock);