diff options
Diffstat (limited to 'lib/libc')
-rw-r--r-- | lib/libc/rpc/svc_generic.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/libc/rpc/svc_generic.c b/lib/libc/rpc/svc_generic.c index d3db612..00bbc5a 100644 --- a/lib/libc/rpc/svc_generic.c +++ b/lib/libc/rpc/svc_generic.c @@ -122,7 +122,8 @@ svc_create(void (*dispatch)(struct svc_req *, SVCXPRT *), if (l == NULL) { warnx("svc_create: no memory"); mutex_unlock(&xprtlist_lock); - return (0); + num = 0; + goto done; } l->xprt = xprt; l->next = xprtlist; @@ -132,6 +133,7 @@ svc_create(void (*dispatch)(struct svc_req *, SVCXPRT *), } mutex_unlock(&xprtlist_lock); } +done: __rpc_endconf(handle); /* * In case of num == 0; the error messages are generated by the |