mirror of
https://github.com/esphome/esphome.git
synced 2025-11-18 07:45:56 +00:00
Merge branch 'dev' into web_server_idf_appends
This commit is contained in:
@@ -434,8 +434,7 @@ APIError APINoiseFrameHelper::write_protobuf_packets(ProtoWriteBuffer buffer, st
|
|||||||
return APIError::OK;
|
return APIError::OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
std::vector<uint8_t> *raw_buffer = buffer.get_buffer();
|
uint8_t *buffer_data = buffer.get_buffer()->data();
|
||||||
uint8_t *buffer_data = raw_buffer->data(); // Cache buffer pointer
|
|
||||||
|
|
||||||
this->reusable_iovs_.clear();
|
this->reusable_iovs_.clear();
|
||||||
this->reusable_iovs_.reserve(packets.size());
|
this->reusable_iovs_.reserve(packets.size());
|
||||||
|
|||||||
@@ -230,8 +230,7 @@ APIError APIPlaintextFrameHelper::write_protobuf_packets(ProtoWriteBuffer buffer
|
|||||||
return APIError::OK;
|
return APIError::OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
std::vector<uint8_t> *raw_buffer = buffer.get_buffer();
|
uint8_t *buffer_data = buffer.get_buffer()->data();
|
||||||
uint8_t *buffer_data = raw_buffer->data(); // Cache buffer pointer
|
|
||||||
|
|
||||||
this->reusable_iovs_.clear();
|
this->reusable_iovs_.clear();
|
||||||
this->reusable_iovs_.reserve(packets.size());
|
this->reusable_iovs_.reserve(packets.size());
|
||||||
|
|||||||
@@ -576,11 +576,12 @@ void Application::yield_with_select_(uint32_t delay_ms) {
|
|||||||
// Update fd_set if socket list has changed
|
// Update fd_set if socket list has changed
|
||||||
if (this->socket_fds_changed_) {
|
if (this->socket_fds_changed_) {
|
||||||
FD_ZERO(&this->base_read_fds_);
|
FD_ZERO(&this->base_read_fds_);
|
||||||
|
// fd bounds are already validated in register_socket_fd() or guaranteed by platform design:
|
||||||
|
// - ESP32: LwIP guarantees fd < FD_SETSIZE by design (LWIP_SOCKET_OFFSET = FD_SETSIZE - CONFIG_LWIP_MAX_SOCKETS)
|
||||||
|
// - Other platforms: register_socket_fd() validates fd < FD_SETSIZE
|
||||||
for (int fd : this->socket_fds_) {
|
for (int fd : this->socket_fds_) {
|
||||||
if (fd >= 0 && fd < FD_SETSIZE) {
|
|
||||||
FD_SET(fd, &this->base_read_fds_);
|
FD_SET(fd, &this->base_read_fds_);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
this->socket_fds_changed_ = false;
|
this->socket_fds_changed_ = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user