equal
deleted
inserted
replaced
169 return EC_REQUEST_ERROR; |
169 return EC_REQUEST_ERROR; |
170 } |
170 } |
171 |
171 |
172 if (data.size) { // new data waiting to be copied |
172 if (data.size) { // new data waiting to be copied |
173 if (voe->mem_size < data.size) { |
173 if (voe->mem_size < data.size) { |
174 if (voe->data) |
174 fprintf(stderr, "Received %u bytes do not fit info VoE data" |
175 free(voe->data); |
175 " memory (%u bytes)!\n", data.size, voe->mem_size); |
176 voe->data = malloc(data.size); |
176 return EC_REQUEST_ERROR; |
177 if (!voe->data) { |
|
178 voe->mem_size = 0; |
|
179 fprintf(stderr, "Failed to allocate VoE data memory!"); |
|
180 return EC_REQUEST_ERROR; |
|
181 } |
|
182 voe->mem_size = data.size; |
|
183 } |
177 } |
184 |
178 |
185 data.data = voe->data; |
179 data.data = voe->data; |
186 |
180 |
187 if (ioctl(voe->config->master->fd, EC_IOCTL_VOE_DATA, &data) == -1) { |
181 if (ioctl(voe->config->master->fd, EC_IOCTL_VOE_DATA, &data) == -1) { |