return;
if (value)
- size += strlen(section) + 1;
+ size += strlen(value) + 1;
h = uci_alloc_element(ctx, history, option, size);
ptr = uci_dataptr(h);
list = e->list.prev;
switch(e->type) {
case UCI_TYPE_SECTION:
- UCI_ASSERT(ctx, uci_validate_name(value));
+ UCI_ASSERT(ctx, uci_validate_str(value, false));
size = sizeof(struct uci_section);
s = uci_to_section(e);
section = e->name;
UCI_ASSERT(ctx, uci_validate_name(option));
UCI_ASSERT(ctx, value != NULL);
} else {
- UCI_ASSERT(ctx, uci_validate_name(value));
+ UCI_ASSERT(ctx, uci_validate_str(value, false));
}
/*
goto notfound;
s = uci_to_section(e);
- if (ctx->pctx)
+ if (ctx->pctx && ctx->pctx->merge)
ctx->pctx->section = s;
if (option) {
uci_alloc_option(s, option, value);
else {
s = uci_alloc_section(p, value, section);
- if (ctx->pctx)
+ if (ctx->pctx && ctx->pctx->merge)
ctx->pctx->section = s;
}