diff options
author | Vadim Yanitskiy <axilirator@gmail.com> | 2018-01-08 23:10:55 +0600 |
---|---|---|
committer | Vadim Yanitskiy <axilirator@gmail.com> | 2018-01-08 23:42:24 +0600 |
commit | 9e997267f643a8234e341f281a7b57165513b440 (patch) | |
tree | 74ca2ce547597011da81421a77b73a1488909c4e /libgsmhr | |
parent | 45d0fd66c3aceebcd1dc30ae2cffb33f5c65fe8e (diff) |
libgsmhr/libgsmhr.c: fix memory leak after gsmhr_exit()
During the HR codec initialization, a part of the state is
allocated, but not freed at exit. Let's fix this.
Found during debugging with Valgrind:
4,932 bytes in 1 blocks are definitely lost in loss record 177 of 179
at 0x4C2AB80: malloc (in vgpreload_memcheck-amd64-linux.so)
by 0x6381C8F: gsmhr_init (libgsmhr.c:63)
by 0x526DF62: osmo_gapk_pq_queue_codec (pq_codec.c:48)
by 0x401ACE: make_processing_chain (app_osmo_gapk.c:573)
by 0x401ACE: main (app_osmo_gapk.c:765)
Change-Id: Ie9ead89c2272782de8d928f29753e6a523cf8834
Diffstat (limited to 'libgsmhr')
-rw-r--r-- | libgsmhr/libgsmhr.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/libgsmhr/libgsmhr.c b/libgsmhr/libgsmhr.c index eca0ce0..305bbb6 100644 --- a/libgsmhr/libgsmhr.c +++ b/libgsmhr/libgsmhr.c @@ -79,6 +79,7 @@ gsmhr_init(void) EXPORT void gsmhr_exit(struct gsmhr *state) { + free(state->bss_save); free(state); } |