X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;ds=sidebyside;f=resource%2Fcsdk%2Fconnectivity%2Fsrc%2Fcaretransmission.c;h=b8c6f59e8f2e5d54ecbaa361b383cda643c17509;hb=50ae8f33fd013ab3767a7fa3b0b699017799dac0;hp=e4938f597b95a169da1432779e789a8f7e0c6949;hpb=5e4e2ea69cdb7cca18f43ef016cdce1070455f2f;p=platform%2Fupstream%2Fiotivity.git diff --git a/resource/csdk/connectivity/src/caretransmission.c b/resource/csdk/connectivity/src/caretransmission.c index e4938f5..b8c6f59 100644 --- a/resource/csdk/connectivity/src/caretransmission.c +++ b/resource/csdk/connectivity/src/caretransmission.c @@ -224,7 +224,7 @@ static void CARetransmissionBaseRoutine(void *threadValue) OIC_LOG(DEBUG, TAG, "wake up.."); } - else + else if (!context->isStop) { // check each RETRANSMISSION_CHECK_PERIOD_SEC time. OIC_LOG_V(DEBUG, TAG, "wait..(%d)microseconds", @@ -234,6 +234,10 @@ static void CARetransmissionBaseRoutine(void *threadValue) uint64_t absTime = RETRANSMISSION_CHECK_PERIOD_SEC * (uint64_t) USECS_PER_SEC; ca_cond_wait_for(context->threadCond, context->threadMutex, absTime ); } + else + { + // we are stopping, so we want to unlock and finish stopping + } // mutex unlock ca_mutex_unlock(context->threadMutex);