aboutsummaryrefslogtreecommitdiffstats
path: root/libgsmhr
diff options
context:
space:
mode:
authorVadim Yanitskiy <axilirator@gmail.com>2018-01-08 23:10:55 +0600
committerVadim Yanitskiy <axilirator@gmail.com>2018-01-08 23:42:24 +0600
commit9e997267f643a8234e341f281a7b57165513b440 (patch)
tree74ca2ce547597011da81421a77b73a1488909c4e /libgsmhr
parent45d0fd66c3aceebcd1dc30ae2cffb33f5c65fe8e (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.c1
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);
}