summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tests/audiomatch.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/tests/audiomatch.c b/tests/audiomatch.c
index bb9deca624..56a60bdecf 100644
--- a/tests/audiomatch.c
+++ b/tests/audiomatch.c
@@ -82,9 +82,9 @@ int main(int argc, char **argv) {
signal = malloc(siglen * sizeof(*signal));
if (fread(data , 1, datlen, f[0]) != datlen)
- return 1;
+ goto read_fail;
if (fread(signal, 1, siglen, f[1]) != siglen)
- return 1;
+ goto read_fail;
datlen /= 2;
siglen /= 2;
@@ -111,5 +111,12 @@ int main(int argc, char **argv) {
}
printf("presig: %d postsig:%d c:%7.4f lenerr:%d\n", bestpos, datlen - siglen - bestpos, bestc / sigamp, datlen - siglen);
+ free(data);
+ free(signal);
return 0;
+
+read_fail:
+ free(data);
+ free(signal);
+ return 1;
}