diff --git a/kernel/base/ipc/los_mux.c b/kernel/base/ipc/los_mux.c index fa4a67b81bbd3529ac2802dce7075d1af6217809..bd032b14dd187e88c682cc95416cf68c472d4050 100644 --- a/kernel/base/ipc/los_mux.c +++ b/kernel/base/ipc/los_mux.c @@ -309,7 +309,13 @@ STATIC UINT32 OsMuxPendOp(LosTaskCB *runTask, LosMux *mutex, UINT32 timeout) } if (((LosTaskCB *)mutex->owner == runTask) && (mutex->attr.type == LOS_MUX_RECURSIVE)) { - mutex->muxCount++; + if(mutex->muxCount!=65535){ + mutex->muxCount++; + } else { + return LOS_EINVAL; + } + } + return LOS_OK; }