mirror of
				https://github.com/esphome/esphome.git
				synced 2025-11-04 09:01:49 +00:00 
			
		
		
		
	Merge branch 'integration' into memory_api
This commit is contained in:
		@@ -291,7 +291,6 @@ uint16_t APIConnection::encode_message_to_buffer(ProtoMessage &msg, uint8_t mess
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  // Get buffer size after allocation (which includes header padding)
 | 
					  // Get buffer size after allocation (which includes header padding)
 | 
				
			||||||
  std::vector<uint8_t> &shared_buf = conn->parent_->get_shared_buffer_ref();
 | 
					  std::vector<uint8_t> &shared_buf = conn->parent_->get_shared_buffer_ref();
 | 
				
			||||||
  size_t size_before_encode = shared_buf.size();
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
  if (is_single || conn->flags_.batch_first_message) {
 | 
					  if (is_single || conn->flags_.batch_first_message) {
 | 
				
			||||||
    // Single message or first batch message
 | 
					    // Single message or first batch message
 | 
				
			||||||
@@ -302,11 +301,13 @@ uint16_t APIConnection::encode_message_to_buffer(ProtoMessage &msg, uint8_t mess
 | 
				
			|||||||
  } else {
 | 
					  } else {
 | 
				
			||||||
    // Batch message second or later
 | 
					    // Batch message second or later
 | 
				
			||||||
    // Add padding for previous message footer + this message header
 | 
					    // Add padding for previous message footer + this message header
 | 
				
			||||||
    shared_buf.reserve(size_before_encode + total_calculated_size);
 | 
					    size_t current_size = shared_buf.size();
 | 
				
			||||||
    shared_buf.resize(size_before_encode + footer_size + header_padding);
 | 
					    shared_buf.reserve(current_size + total_calculated_size);
 | 
				
			||||||
 | 
					    shared_buf.resize(current_size + footer_size + header_padding);
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  // Encode directly into buffer
 | 
					  // Encode directly into buffer
 | 
				
			||||||
 | 
					  size_t size_before_encode = shared_buf.size();
 | 
				
			||||||
  msg.encode({&shared_buf});
 | 
					  msg.encode({&shared_buf});
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  // Calculate actual encoded size (not including header that was already added)
 | 
					  // Calculate actual encoded size (not including header that was already added)
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user