shithub: opus

Download patch

ref: cba0ecd4830f29ab003369bf9f941f7d17d65c84
parent: 6ea726d4016ae46853fd9f0a0ff6751db5f061dd
author: Jean-Marc Valin <jmvalin@amazon.com>
date: Mon Aug 2 14:37:19 EDT 2021

Fix warnings about ignoring fread() return value

--- a/dnn/dump_data.c
+++ b/dnn/dump_data.c
@@ -205,12 +205,17 @@
   while (1) {
     float E=0;
     int silent;
+    size_t ret;
     for (i=0;i<FRAME_SIZE;i++) x[i] = tmp[i];
-    fread(tmp, sizeof(short), FRAME_SIZE, f1);
-    if (feof(f1)) {
+    ret = fread(tmp, sizeof(short), FRAME_SIZE, f1);
+    if (feof(f1) || ret != FRAME_SIZE) {
       if (!training) break;
       rewind(f1);
-      fread(tmp, sizeof(short), FRAME_SIZE, f1);
+      ret = fread(tmp, sizeof(short), FRAME_SIZE, f1);
+      if (ret != FRAME_SIZE) {
+        fprintf(stderr, "error reading\n");
+        exit(1);
+      }
       one_pass_completed = 1;
     }
     for (i=0;i<FRAME_SIZE;i++) E += tmp[i]*(float)tmp[i];
--- a/dnn/lpcnet_demo.c
+++ b/dnn/lpcnet_demo.c
@@ -75,8 +75,9 @@
         while (1) {
             unsigned char buf[LPCNET_COMPRESSED_SIZE];
             short pcm[LPCNET_PACKET_SAMPLES];
-            fread(pcm, sizeof(pcm[0]), LPCNET_PACKET_SAMPLES, fin);
-            if (feof(fin)) break;
+            size_t ret;
+            ret = fread(pcm, sizeof(pcm[0]), LPCNET_PACKET_SAMPLES, fin);
+            if (feof(fin) || ret != LPCNET_PACKET_SAMPLES) break;
             lpcnet_encode(net, pcm, buf);
             fwrite(buf, 1, LPCNET_COMPRESSED_SIZE, fout);
         }
@@ -87,8 +88,9 @@
         while (1) {
             unsigned char buf[LPCNET_COMPRESSED_SIZE];
             short pcm[LPCNET_PACKET_SAMPLES];
-            fread(buf, sizeof(buf[0]), LPCNET_COMPRESSED_SIZE, fin);
-            if (feof(fin)) break;
+            size_t ret;
+            ret = fread(buf, sizeof(buf[0]), LPCNET_COMPRESSED_SIZE, fin);
+            if (feof(fin) || ret != LPCNET_COMPRESSED_SIZE) break;
             lpcnet_decode(net, buf, pcm);
             fwrite(pcm, sizeof(pcm[0]), LPCNET_PACKET_SAMPLES, fout);
         }
@@ -99,8 +101,9 @@
         while (1) {
             float features[4][NB_TOTAL_FEATURES];
             short pcm[LPCNET_PACKET_SAMPLES];
-            fread(pcm, sizeof(pcm[0]), LPCNET_PACKET_SAMPLES, fin);
-            if (feof(fin)) break;
+            size_t ret;
+            ret = fread(pcm, sizeof(pcm[0]), LPCNET_PACKET_SAMPLES, fin);
+            if (feof(fin) || ret != LPCNET_PACKET_SAMPLES) break;
             lpcnet_compute_features(net, pcm, features);
             fwrite(features, sizeof(float), 4*NB_TOTAL_FEATURES, fout);
         }
@@ -112,8 +115,9 @@
             float in_features[NB_TOTAL_FEATURES];
             float features[NB_FEATURES];
             short pcm[LPCNET_FRAME_SIZE];
-            fread(in_features, sizeof(features[0]), NB_TOTAL_FEATURES, fin);
-            if (feof(fin)) break;
+            size_t ret;
+            ret = fread(in_features, sizeof(features[0]), NB_TOTAL_FEATURES, fin);
+            if (feof(fin) || ret != NB_TOTAL_FEATURES) break;
             RNN_COPY(features, in_features, NB_FEATURES);
             lpcnet_synthesize(net, features, pcm, LPCNET_FRAME_SIZE);
             fwrite(pcm, sizeof(pcm[0]), LPCNET_FRAME_SIZE, fout);
--