X-Git-Url: https://git.ozlabs.org/?a=blobdiff_plain;f=ccan%2Fopt%2Fhelpers.c;h=43b86d7ca2ad953665522cf37f449b8046ffd3b7;hb=7220240c0e2fa8c9610736565e73d3c74a73466c;hp=e531a7d3aa2bc9d250e0608f21f0604d66e13733;hpb=b377324e5c1ad356b535f4c3724251c626abdf40;p=ccan diff --git a/ccan/opt/helpers.c b/ccan/opt/helpers.c index e531a7d3..43b86d7c 100644 --- a/ccan/opt/helpers.c +++ b/ccan/opt/helpers.c @@ -165,6 +165,12 @@ char *opt_inc_intval(int *i) return NULL; } +char *opt_dec_intval(int *i) +{ + (*i)--; + return NULL; +} + /* Display version string. */ char *opt_version_and_exit(const char *version) { @@ -196,14 +202,19 @@ void opt_show_invbool(char buf[OPT_SHOW_LEN], const bool *b) void opt_show_charp(char buf[OPT_SHOW_LEN], char *const *p) { - size_t len = strlen(*p); - buf[0] = '"'; - if (len > OPT_SHOW_LEN - 2) - len = OPT_SHOW_LEN - 2; - strncpy(buf+1, *p, len); - buf[1+len] = '"'; - if (len < OPT_SHOW_LEN - 2) - buf[2+len] = '\0'; + if (*p){ + size_t len = strlen(*p); + buf[0] = '"'; + if (len > OPT_SHOW_LEN - 2) + len = OPT_SHOW_LEN - 2; + strncpy(buf+1, *p, len); + buf[1+len] = '"'; + if (len < OPT_SHOW_LEN - 2) + buf[2+len] = '\0'; + } + else { + strncpy(buf, "(nil)", OPT_SHOW_LEN); + } } /* Show an integer value, various forms. */