diff options
-rw-r--r-- | src/clnt_vc.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/clnt_vc.c b/src/clnt_vc.c index 3d775c7..ec58892 100644 --- a/src/clnt_vc.c +++ b/src/clnt_vc.c @@ -334,8 +334,11 @@ err: mem_free(ct->ct_addr.buf, ct->ct_addr.len); mem_free(ct, sizeof (struct ct_data)); } - if (cl) - mem_free(cl, sizeof (CLIENT)); + mem_free(cl, sizeof (CLIENT)); + } else if (ct) { + if (ct->ct_addr.len) + mem_free(ct->ct_addr.buf, ct->ct_addr.len); + mem_free(ct, sizeof (struct ct_data)); } return ((CLIENT *)NULL); } |