remove schema_len, use a sentinel
[protos/libecoli.git] / lib / ecoli_node_cmd.c
index b08db0b..428f453 100644 (file)
@@ -428,6 +428,9 @@ static const struct ec_config_schema ec_node_cmd_subschema[] = {
                .desc = "A child node whose id is referenced in the expression.",
                .type = EC_CONFIG_TYPE_NODE,
        },
+       {
+               .type = EC_CONFIG_TYPE_NONE,
+       },
 };
 
 static const struct ec_config_schema ec_node_cmd_schema[] = {
@@ -446,7 +449,9 @@ static const struct ec_config_schema ec_node_cmd_schema[] = {
                .desc = "The list of children nodes.",
                .type = EC_CONFIG_TYPE_LIST,
                .subschema = ec_node_cmd_subschema,
-               .subschema_len = EC_COUNT_OF(ec_node_cmd_subschema),
+       },
+       {
+               .type = EC_CONFIG_TYPE_NONE,
        },
 };
 
@@ -530,7 +535,6 @@ ec_node_cmd_get_child(const struct ec_node *gen_node, size_t i,
 static struct ec_node_type ec_node_cmd_type = {
        .name = "cmd",
        .schema = ec_node_cmd_schema,
-       .schema_len = EC_COUNT_OF(ec_node_cmd_schema),
        .set_config = ec_node_cmd_set_config,
        .parse = ec_node_cmd_parse,
        .complete = ec_node_cmd_complete,
@@ -557,7 +561,7 @@ struct ec_node *__ec_node_cmd(const char *id, const char *cmd, ...)
        if (children == NULL)
                goto fail;
 
-       gen_node = __ec_node(&ec_node_cmd_type, id);
+       gen_node = ec_node_from_type(&ec_node_cmd_type, id);
        if (gen_node == NULL)
                goto fail;
        node = (struct ec_node_cmd *)gen_node;