X-Git-Url: https://git.archive.openwrt.org/?p=project%2Fuci.git;a=blobdiff_plain;f=list.c;h=ab2683c4c47d282018336b1be628f2a76b489e02;hp=3fc6076a06f395c928cc11d41fe046d4cfdc93c4;hb=28caa37a5d52cdf2a99201c32a9ccba59661a1af;hpb=ee1d58013e175386841efd30a9deb3e8a64d584e diff --git a/list.c b/list.c index 3fc6076..ab2683c 100644 --- a/list.c +++ b/list.c @@ -414,11 +414,8 @@ int uci_delete(struct uci_context *ctx, struct uci_package *p, char *section, ch /* NB: p, section, option validated by uci_lookup */ UCI_INTERNAL(uci_lookup, ctx, &e, p, section, option); - if (!internal) - return uci_del_element(ctx, e); - UCI_INTERNAL(uci_del_element, ctx, e); - - return 0; + ctx->internal = internal; + return uci_del_element(ctx, e); } int uci_set(struct uci_context *ctx, struct uci_package *p, char *section, char *option, char *value) @@ -468,11 +465,8 @@ int uci_set(struct uci_context *ctx, struct uci_package *p, char *section, char else e = &s->e; - if (!internal) - return uci_set_element_value(ctx, &e, value); - - UCI_INTERNAL(uci_set_element_value, ctx, &e, value); - return 0; + ctx->internal = internal; + return uci_set_element_value(ctx, &e, value); notfound: /*