Do not re-alloc memory in library implementation of ecrt_sdo_request_state().
This commit is contained in:
parent
8adc064f69
commit
3fedcc24a3
|
|
@ -101,16 +101,9 @@ ec_request_state_t ecrt_sdo_request_state(ec_sdo_request_t *req)
|
|||
|
||||
if (data.size) { // new data waiting to be copied
|
||||
if (req->mem_size < data.size) {
|
||||
if (req->data)
|
||||
free(req->data);
|
||||
req->data = malloc(data.size);
|
||||
if (!req->data) {
|
||||
req->mem_size = 0;
|
||||
fprintf(stderr, "Failed to allocate %u bytes of SDO data"
|
||||
" memory!\n", data.size);
|
||||
return EC_REQUEST_ERROR;
|
||||
}
|
||||
req->mem_size = data.size;
|
||||
fprintf(stderr, "Received %u bytes do not fit info SDO data"
|
||||
" memory (%u bytes)!\n", data.size, req->mem_size);
|
||||
return EC_REQUEST_ERROR;
|
||||
}
|
||||
|
||||
data.data = req->data;
|
||||
|
|
|
|||
Loading…
Reference in New Issue