mirror of
https://github.com/esphome/esphome.git
synced 2026-01-10 04:00:51 -07:00
[web_server] Use centralized length constants for buffer sizing
This commit is contained in:
@@ -500,15 +500,12 @@ static void set_json_id(JsonObject &root, EntityBase *obj, const char *prefix, J
|
||||
// Format: {prefix}/{device?}/{name}
|
||||
// Buffer sizes use constants from entity_base.h validated in core/config.py
|
||||
#ifdef USE_DEVICES
|
||||
// domain + "/" + device + "/" + name + null
|
||||
static constexpr size_t ID_BUF_SIZE =
|
||||
ESPHOME_DOMAIN_MAX_LEN + 1 + ESPHOME_DEVICE_NAME_MAX_LEN + 1 + ESPHOME_FRIENDLY_NAME_MAX_LEN + 1;
|
||||
char id_buf[ID_BUF_SIZE];
|
||||
#else
|
||||
// domain + "/" + name + null
|
||||
static constexpr size_t ID_BUF_SIZE = ESPHOME_DOMAIN_MAX_LEN + 1 + ESPHOME_FRIENDLY_NAME_MAX_LEN + 1;
|
||||
char id_buf[ID_BUF_SIZE];
|
||||
#endif
|
||||
char id_buf[ID_BUF_SIZE];
|
||||
char *p = id_buf;
|
||||
memcpy(p, prefix, prefix_len);
|
||||
p += prefix_len;
|
||||
|
||||
@@ -22,7 +22,7 @@ static constexpr size_t ESPHOME_FRIENDLY_NAME_MAX_LEN = 120;
|
||||
// Maximum domain length (longest: "alarm_control_panel" = 19)
|
||||
static constexpr size_t ESPHOME_DOMAIN_MAX_LEN = 20;
|
||||
|
||||
// Maximum size for object_id buffer (friendly_name + margin for sanitization)
|
||||
// Maximum size for object_id buffer (friendly_name + null + margin)
|
||||
static constexpr size_t OBJECT_ID_MAX_LEN = 128;
|
||||
|
||||
enum EntityCategory : uint8_t {
|
||||
|
||||
Reference in New Issue
Block a user