diff options
| author | Donald Sharp <sharpd@nvidia.com> | 2020-11-18 08:54:51 -0500 |
|---|---|---|
| committer | Donald Sharp <sharpd@nvidia.com> | 2020-11-18 08:54:51 -0500 |
| commit | 1d06fc711a498928638cf554d0e8d29afb5cd561 (patch) | |
| tree | 77ae52ce45bdef46d190985ffa06662cb8f98495 | |
| parent | b83bb9aa629a0361bc76fa90beb6f6e7d2b57332 (diff) | |
lib: Cleanup mem-leaks in error case
When we fail to properly lookup an error code, properly cleanup
on return.
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
| -rw-r--r-- | lib/ferr.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/ferr.c b/lib/ferr.c index 7b923da177..691da495cf 100644 --- a/lib/ferr.c +++ b/lib/ferr.c @@ -121,8 +121,12 @@ void log_ref_display(struct vty *vty, uint32_t code, bool json) if (code) { ref = log_ref_get(code); - if (!ref) + if (!ref) { + if (top) + json_object_free(top); + list_delete(&errlist); return; + } listnode_add(errlist, ref); } |
