Handle https error nicely
This commit is contained in:
@@ -443,21 +443,21 @@ script:
|
|||||||
auto upload_range_esp_idf_ = [&](const std::string &url, int range_start) -> int {
|
auto upload_range_esp_idf_ = [&](const std::string &url, int range_start) -> int {
|
||||||
static const char *const TAG = "script.upload_tft.upload_range_esp_idf_";
|
static const char *const TAG = "script.upload_tft.upload_range_esp_idf_";
|
||||||
ESP_LOGVV(TAG, "url: %s", url.c_str());
|
ESP_LOGVV(TAG, "url: %s", url.c_str());
|
||||||
ESP_LOGVV(TAG, "range_start: %i", range_start);
|
uint range_size_ = this->tft_size_ - range_start;
|
||||||
uint range_size_ = tft_size_ - range_start;
|
ESP_LOGVV(TAG, "tft_size_: %i", this->tft_size_);
|
||||||
ESP_LOGVV(TAG, "range_size_: %i", range_size_);
|
ESP_LOGV(TAG, "Available heap: %u", esp_get_free_heap_size());
|
||||||
if (range_size_ <= 0) {
|
int range_end = (range_start == 0) ? std::min(this->tft_size_, 16383) : this->tft_size_;
|
||||||
|
if (range_size_ <= 0 or range_end <= range_start) {
|
||||||
ESP_LOGE(TAG, "Invalid range");
|
ESP_LOGE(TAG, "Invalid range");
|
||||||
|
ESP_LOGD(TAG, "Range start: %i", range_start);
|
||||||
|
ESP_LOGD(TAG, "Range end: %i", range_end);
|
||||||
|
ESP_LOGD(TAG, "Range size: %i", range_size_);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
ESP_LOGVV(TAG, "tft_size_: %i", tft_size_);
|
|
||||||
ESP_LOGV(TAG, "Available heap: %u", esp_get_free_heap_size());
|
|
||||||
|
|
||||||
int range_end = (range_start == 0) ? std::min(tft_size_, 16383) : tft_size_;
|
|
||||||
ESP_LOGVV(TAG, "range_end: %i", range_end);
|
|
||||||
|
|
||||||
esp_http_client_config_t config = {
|
esp_http_client_config_t config = {
|
||||||
.url = url.c_str(),
|
.url = url.c_str(),
|
||||||
|
.cert_pem = nullptr,
|
||||||
};
|
};
|
||||||
esp_http_client_handle_t client = esp_http_client_init(&config);
|
esp_http_client_handle_t client = esp_http_client_init(&config);
|
||||||
|
|
||||||
@@ -473,9 +473,16 @@ script:
|
|||||||
esp_http_client_cleanup(client);
|
esp_http_client_cleanup(client);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
ESP_LOGV(TAG, "Fetch content length");
|
ESP_LOGV(TAG, "Fetch content length");
|
||||||
int content_length = esp_http_client_fetch_headers(client);
|
int content_length = esp_http_client_fetch_headers(client);
|
||||||
ESP_LOGV(TAG, "content_length = %d", content_length);
|
ESP_LOGV(TAG, "content_length = %d", content_length);
|
||||||
|
if (content_length <= 0) {
|
||||||
|
ESP_LOGE(TAG, "Failed to get content length: %d", content_length);
|
||||||
|
esp_http_client_cleanup(client);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
int total_read_len = 0, read_len;
|
int total_read_len = 0, read_len;
|
||||||
|
|
||||||
ESP_LOGV(TAG, "Allocate buffer");
|
ESP_LOGV(TAG, "Allocate buffer");
|
||||||
@@ -565,6 +572,7 @@ script:
|
|||||||
ESP_LOGVV(TAG, "Available heap: %u", esp_get_free_heap_size());
|
ESP_LOGVV(TAG, "Available heap: %u", esp_get_free_heap_size());
|
||||||
esp_http_client_config_t config = {
|
esp_http_client_config_t config = {
|
||||||
.url = url.c_str(),
|
.url = url.c_str(),
|
||||||
|
.cert_pem = nullptr,
|
||||||
.method = HTTP_METHOD_HEAD,
|
.method = HTTP_METHOD_HEAD,
|
||||||
.timeout_ms = 15000,
|
.timeout_ms = 15000,
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user