Browse Source

fix: heap corruption caused by dma_buffer in cam_deinit()

pull/470/head
Wang Yu Xin 3 years ago
parent
commit
e8727c2747
  1. 5
      driver/cam_hal.c

5
driver/cam_hal.c

@ -435,6 +435,9 @@ esp_err_t cam_deinit(void) @@ -435,6 +435,9 @@ esp_err_t cam_deinit(void)
if (cam_obj->frame_buffer_queue) {
vQueueDelete(cam_obj->frame_buffer_queue);
}
ll_cam_deinit(cam_obj);
if (cam_obj->dma) {
free(cam_obj->dma);
}
@ -451,8 +454,6 @@ esp_err_t cam_deinit(void) @@ -451,8 +454,6 @@ esp_err_t cam_deinit(void)
free(cam_obj->frames);
}
ll_cam_deinit(cam_obj);
free(cam_obj);
cam_obj = NULL;
return ESP_OK;

Loading…
Cancel
Save