From ec6e42ba3d82ffaca24c2debd010111a60628408 Mon Sep 17 00:00:00 2001 From: Jean-Marc Valin <jmvalin@amazon.com> Date: Wed, 31 May 2023 15:57:37 -0400 Subject: [PATCH] misc fixes --- dnn/lpcnet_demo.c | 4 ++++ dnn/lpcnet_plc.c | 4 +++- dnn/parse_lpcnet_weights.c | 4 ++++ 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/dnn/lpcnet_demo.c b/dnn/lpcnet_demo.c index b88176f4d..cf62ad3d4 100644 --- a/dnn/lpcnet_demo.c +++ b/dnn/lpcnet_demo.c @@ -225,6 +225,9 @@ int main(int argc, char **argv) { LPCNetPLCState *net; if ((plc_flags&0x3) == LPCNET_PLC_NONCAUSAL) skip=extra=80; net = lpcnet_plc_create(plc_flags); +#ifdef USE_WEIGHTS_FILE + lpcnet_plc_load_model(net, data, len); +#endif while (1) { size_t ret; ret = fread(pcm, sizeof(pcm[0]), FRAME_SIZE, fin); @@ -260,6 +263,7 @@ int main(int argc, char **argv) { } fclose(fin); fclose(fout); + if (plc_file) fclose(plc_file); #ifdef USE_WEIGHTS_FILE free_blob(data, len); #endif diff --git a/dnn/lpcnet_plc.c b/dnn/lpcnet_plc.c index cd9d69201..1e27fb064 100644 --- a/dnn/lpcnet_plc.c +++ b/dnn/lpcnet_plc.c @@ -83,7 +83,9 @@ LPCNET_EXPORT int lpcnet_plc_load_model(LPCNetPLCState *st, const unsigned char parse_weights(&list, data, len); ret = init_plc_model(&st->model, list); free(list); - if (ret == 0) return 0; + if (ret == 0) { + return lpcnet_load_model(&st->lpcnet, data, len); + } else return -1; } diff --git a/dnn/parse_lpcnet_weights.c b/dnn/parse_lpcnet_weights.c index 414270661..c830a13c5 100644 --- a/dnn/parse_lpcnet_weights.c +++ b/dnn/parse_lpcnet_weights.c @@ -66,6 +66,10 @@ int parse_weights(WeightArray **list, const unsigned char *data, int len) *list = realloc(*list, capacity*sizeof(WeightArray)); } (*list)[nb_arrays++] = array; + } else { + free(*list); + *list = NULL; + return -1; } } (*list)[nb_arrays].name=NULL; -- GitLab