From: Felix Fietkau Date: Wed, 27 Aug 2008 14:31:49 +0000 (+0200) Subject: report errors on partial lookups for show/get in the cli instead of silently falling... X-Git-Url: http://git.archive.openwrt.org/?p=project%2Fuci.git;a=commitdiff_plain;h=2ade5d42fba9f4eed4b5bba8fbff863b6149d13a;hp=12c5b22102873e303e540f886489831461d54ea9 report errors on partial lookups for show/get in the cli instead of silently falling back to the last match --- diff --git a/cli.c b/cli.c index 1f08100..305d9fe 100644 --- a/cli.c +++ b/cli.c @@ -202,8 +202,11 @@ static int package_cmd(int cmd, char *tuple) uci_export(ctx, stdout, ptr.p, true); break; case CMD_SHOW: - if (!(ptr.flags & UCI_LOOKUP_COMPLETE)) + if (!(ptr.flags & UCI_LOOKUP_COMPLETE)) { + ctx->err = UCI_ERR_NOTFOUND; + cli_perror(); return 1; + } switch(e->type) { case UCI_TYPE_PACKAGE: uci_show_package(ptr.p); @@ -340,6 +343,11 @@ static int uci_do_section_cmd(int cmd, int argc, char **argv) e = ptr.last; switch(cmd) { case CMD_GET: + if (!(ptr.flags & UCI_LOOKUP_COMPLETE)) { + ctx->err = UCI_ERR_NOTFOUND; + cli_perror(); + return 1; + } switch(e->type) { case UCI_TYPE_SECTION: printf("%s\n", ptr.s->type);