aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMooneer Salem <[email protected]>2024-03-28 01:04:12 -0700
committerMooneer Salem <[email protected]>2024-03-28 01:04:12 -0700
commit7c7a9035fe9d7171e53e3dd355d5a02856524984 (patch)
tree0ee23763152f6671d381db2b94397afca614ba46
parentcc8430e9dae6627f217ae704a0734583222cd3e9 (diff)
Fix some memory leak errors.
-rw-r--r--src/ch.c2
-rw-r--r--src/freedv_rx.c7
2 files changed, 6 insertions, 3 deletions
diff --git a/src/ch.c b/src/ch.c
index 9d8d895..1e59011 100644
--- a/src/ch.c
+++ b/src/ch.c
@@ -212,6 +212,7 @@ int main(int argc, char *argv[]) {
ctest = 1;
break;
case 'u':
+ if (fading_dir) free(fading_dir);
fading_dir = strdup(optarg);
break;
case 'h':
@@ -519,6 +520,7 @@ int main(int argc, char *argv[]) {
fprintf(stderr, "ch: WARNING output clipping\n");
if (ffading != NULL) fclose(ffading);
+ if (fading_dir) free(fading_dir);
if (ch_fdm_delay != NULL) FREE(ch_fdm_delay);
if (ctest) {
/* special ctest mode: check CPAPR is around 0dB */
diff --git a/src/freedv_rx.c b/src/freedv_rx.c
index c4df02c..54b0067 100644
--- a/src/freedv_rx.c
+++ b/src/freedv_rx.c
@@ -306,6 +306,7 @@ int main(int argc, char *argv[]) {
/* finish up with some stats */
+ int rc = 0;
if (freedv_get_test_frames(freedv)) {
int Tbits = freedv_get_total_bits(freedv);
int Terrs = freedv_get_total_bit_errors(freedv);
@@ -327,9 +328,9 @@ int main(int argc, char *argv[]) {
/* set return code for Ctest */
if ((uncoded_ber < 0.1f) && (coded_ber < 0.01f))
- return 0;
+ rc = 0;
else
- return 1;
+ rc = 1;
}
}
@@ -339,5 +340,5 @@ int main(int argc, char *argv[]) {
freedv_close(freedv);
- return 0;
+ return rc;
}