From e8727c27473288db5c57c9cd049cb36c84be8e7c Mon Sep 17 00:00:00 2001 From: Wang Yu Xin Date: Thu, 27 Oct 2022 17:07:55 +0800 Subject: [PATCH] fix: heap corruption caused by dma_buffer in cam_deinit() --- driver/cam_hal.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/driver/cam_hal.c b/driver/cam_hal.c index 27f66b6..62c27be 100644 --- a/driver/cam_hal.c +++ b/driver/cam_hal.c @@ -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) free(cam_obj->frames); } - ll_cam_deinit(cam_obj); - free(cam_obj); cam_obj = NULL; return ESP_OK;