From 45b31fb62f1f994faf33a92ee7a77b3724decb17 Mon Sep 17 00:00:00 2001 From: bpc2003 Date: Fri, 14 Mar 2025 16:34:12 -0400 Subject: Fix typo in README.md --- src/main.c | 39 ++++++++++++++++++++++----------------- 1 file changed, 22 insertions(+), 17 deletions(-) (limited to 'src') diff --git a/src/main.c b/src/main.c index 9b7de68..ed065e8 100644 --- a/src/main.c +++ b/src/main.c @@ -1,11 +1,12 @@ #include #include #include +#include #include "lib/mdb.h" #include "cmd.h" -int getrange(char *selector); +int getid(char *selector); void printkeys(struct keytablist *list, int id, char **keys, int klen); void setkeys(struct keytablist **list, int id, char **pairs, int plen); void delkeys(struct keytablist *list, int id, char **keys, int klen); @@ -27,31 +28,34 @@ int main(int argc, char **argv) if (!strcmp(cmd, "exit") || !strcmp(cmd, "")) break; struct cmd evaled = eval(cmd); - int range = getrange(evaled.selector); + int id = getid(evaled.selector); switch (evaled.type) { case GET: - if (range >= 0) - printkeys(list, range, evaled.params, evaled.plen); - else if (range == -1) { + if (id >= 0) + printkeys(list, id, evaled.params, evaled.plen); + else if (id == -1) { for (int i = 0; i < list[0].len; ++i) printkeys(list, i, evaled.params, evaled.plen); - } + } else + fprintf(stderr, "Invalid selector: %s\n", evaled.selector); break; case SET: - if (range >= 0) - setkeys(&list, range, evaled.params, evaled.plen); - else if (range == -1) { + if (id >= 0) + setkeys(&list, id, evaled.params, evaled.plen); + else if (id == -1) { for (int i = 0; i < list[0].len; ++i) setkeys(&list, i, evaled.params, evaled.plen); - } + } else + fprintf(stderr, "Invalid selector: %s\n", evaled.selector); break; case DEL: - if (range >= 0) - delkeys(list, range, evaled.params, evaled.plen); - else if (range == -1) { + if (id >= 0) + delkeys(list, id, evaled.params, evaled.plen); + else if (id == -1) { for (int i = 0; i < list[0].len; ++i) delkeys(list, i, evaled.params, evaled.plen); - } + } else + fprintf(stderr, "Invalid selector: %s\n", evaled.selector); break; case ERR: fprintf(stderr, "Unkown command: %s\n", cmd); @@ -78,13 +82,14 @@ int main(int argc, char **argv) exit(0); } -int getrange(char *selector) { +int getid(char *selector) { if (selector == NULL) - return -3; + return -2; int id; if (!strcmp(selector, "*")) return -1; - else if ((id = atoi(selector)) >= 0) + else if (isdigit(selector[0]) && + (id = atoi(selector)) >= 0) return id; else return -2; -- cgit v1.2.3