diff --git a/services/zidl/src/power_mgr_stub.cpp b/services/zidl/src/power_mgr_stub.cpp index 5fc8fe7c60ed8d6077f1997980ce5db440e50ac8..101bca18a374ce329d8c786ddbce12ff8a6451b0 100644 --- a/services/zidl/src/power_mgr_stub.cpp +++ b/services/zidl/src/power_mgr_stub.cpp @@ -235,9 +235,8 @@ int32_t PowerMgrStub::ProxyRunningLocksStub(MessageParcel& data, MessageParcel& READ_PARCEL_WITH_RET(data, Bool, isProxied, E_READ_PARCEL_ERROR); int32_t size {0}; READ_PARCEL_WITH_RET(data, Int32, size, E_READ_PARCEL_ERROR); - if (size > MAX_PROXY_RUNNINGLOCK_NUM) { - POWER_HILOGW(COMP_FWK, "size exceed limit, size=%{public}d, limit=%{public}d", size, - MAX_PROXY_RUNNINGLOCK_NUM); + if (size <= 0 || size > MAX_PROXY_RUNNINGLOCK_NUM) { + POWER_HILOGW(COMP_FWK, "size exceed limit, size=%{public}d", size); return E_EXCEED_PARAM_LIMIT; } processInfos.resize(size);