X-Git-Url: http://pilppa.org/gitweb/?a=blobdiff_plain;f=libuci.c;h=947b029e970299fa99acabeb3f07ee6d9cc5ee6e;hb=c60702b55cf8efe9dcd359fc9aa8e9c7cd421ada;hp=bc68462fad19036288ba609a01fb20f580cc6810;hpb=cfdea3894f809aada2cf10ba2914aebe8b92316d;p=uci.git diff --git a/libuci.c b/libuci.c index bc68462..947b029 100644 --- a/libuci.c +++ b/libuci.c @@ -167,13 +167,15 @@ uci_get_errorstr(struct uci_context *ctx, char **dest, const char *prefix) default: break; } - if (dest) - asprintf(dest, format, + if (dest) { + err = asprintf(dest, format, (prefix ? prefix : ""), (prefix ? ": " : ""), (ctx->func ? ctx->func : ""), (ctx->func ? ": " : ""), uci_errstr[err], error_info); - else { + if (err < 0) + *dest = NULL; + } else { strcat(error_info, "\n"); fprintf(stderr, format, (prefix ? prefix : ""), (prefix ? ": " : ""),