Details
Description
The function CipObj_RequestAsync_HighPrio_NoResponseData() passes a local variable "tResponse" to a job that is executed in another worker context.
void CipObj_RequestAsync_HighPrio_NoResponseData(EIP_H hEip,
CIP_OBJ_ASYNC_REQUEST_T* ptRequest,
CIP_OBJ_RESPONSE_CB fnCallback,
void* pvParam)
{
CIP_OBJ_RESPONSE_T tResponse;
ptRequest->fnCallback = fnCallback;
ptRequest->pvCallbackParameter = pvParam;
ptRequest->tJob.pfnFunc = CipObj_RequestAsync_job;
ptRequest->pvJobParam = hEip->hCipObjectDict;
ptRequest->ptResponse = &tResponse;
ptRequest->ptResponse->pbData = NULL;
PS_Worker_QueueJob( hEip->hCipObjectDict->hWorker_HighPrio, &ptRequest->tJob );
}
ptRequest->ptResponse must not be assigned a local variable!
Attachments
Issue Links
- relates to
-
PSEISV5-71 Update to EtherNet/IP Core V3.5.0.5
- Closed