diff --git a/src/parser_json.c b/src/parser_json.c index 17bc38b565ae..8d5aa480ae04 100644 --- a/src/parser_json.c +++ b/src/parser_json.c @@ -3395,6 +3395,14 @@ static struct cmd *json_parse_cmd_add_set(struct json_ctx *ctx, json_t *root, return NULL; } + if (set->key->etype == EXPR_CONCAT && + list_empty(&set->key->expressions)) { + json_error(ctx, "Empty set type."); + set_free(set); + handle_free(&h); + return NULL; + } + if (!json_unpack(root, "{s:o}", "map", &tmp)) { if (json_is_string(tmp)) { const char *s = json_string_value(tmp);