diff options
Diffstat (limited to 'runtime/transport/symbols.c')
-rw-r--r-- | runtime/transport/symbols.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/runtime/transport/symbols.c b/runtime/transport/symbols.c index 72070c7d..9d5163d0 100644 --- a/runtime/transport/symbols.c +++ b/runtime/transport/symbols.c @@ -86,12 +86,13 @@ static struct _stp_module * _stp_alloc_module(unsigned num, unsigned datasize) return mod; bad: - if (mod) - kfree(mod); - if (mod->allocated && mod->symbols) - vfree(mod->symbols); - else - kfree(mod->symbols); + if (mod) { + if (mod->allocated && mod->symbols) + vfree(mod->symbols); + else + kfree(mod->symbols); + kfree(mod); + } return NULL; } |