diff --git a/components/esp_https_ota/src/esp_https_ota.c b/components/esp_https_ota/src/esp_https_ota.c index 7a5ee46bb0..e5350695ef 100644 --- a/components/esp_https_ota/src/esp_https_ota.c +++ b/components/esp_https_ota/src/esp_https_ota.c @@ -1,5 +1,5 @@ /* - * SPDX-FileCopyrightText: 2017-2025 Espressif Systems (Shanghai) CO LTD + * SPDX-FileCopyrightText: 2017-2026 Espressif Systems (Shanghai) CO LTD * * SPDX-License-Identifier: Apache-2.0 */ @@ -728,6 +728,11 @@ esp_err_t esp_https_ota_perform(esp_https_ota_handle_t https_ota_handle) } esp_ota_set_final_partition(handle->update_handle, handle->partition.final, handle->partition.finalize_with_copy); handle->state = ESP_HTTPS_OTA_IN_PROGRESS; + + if (handle->partition.final->type != ESP_PARTITION_TYPE_APP + && handle->partition.final->type != ESP_PARTITION_TYPE_BOOTLOADER) { + return ESP_ERR_HTTPS_OTA_IN_PROGRESS; + } /* In case `esp_https_ota_get_img_desc` was invoked first, then the image data read there should be written to OTA partition */