File sox-14.3.1-undefined.patch of Package sox

Index: src/bend.c
===================================================================
--- src/bend.c.orig
+++ src/bend.c
@@ -108,7 +108,8 @@ static int create(sox_effect_t * effp, i
   }
   argc -= lsx_optind, argv += lsx_optind;
 
-  p->bends = lsx_calloc(p->nbends = argc, sizeof(*p->bends));
+  p->nbends = argc;
+  p->bends = lsx_calloc(p->nbends, sizeof(*p->bends));
   return parse(effp, argv, 0.);     /* No rate yet; parse with dummy */
 }
 
Index: src/delay.c
===================================================================
--- src/delay.c.orig
+++ src/delay.c
@@ -43,7 +43,8 @@ static int create(sox_effect_t * effp, i
   unsigned i;
 
   --argc, ++argv;
-  p->argv = lsx_calloc(p->argc = argc, sizeof(*p->argv));
+  p->argc = argc;
+  p->argv = lsx_calloc(p->argc, sizeof(*p->argv));
   for (i = 0; i < p->argc; ++i) {
     char const * next = lsx_parsesamples(1e5, p->argv[i] = lsx_strdup(argv[i]), &delay, 't');
     if (!next || *next) {
Index: src/fir.c
===================================================================
--- src/fir.c.orig
+++ src/fir.c
@@ -36,8 +36,10 @@ static int create(sox_effect_t * effp, i
   --argc, ++argv;
   if (argc == 1)
     p->filename = argv[0], --argc;
-  else for (; argc && sscanf(*argv, "%lf%c", &d, &c) == 1; --argc, ++argv)
-    (p->h = lsx_realloc(p->h, ++p->n * sizeof(*p->h)))[p->n - 1] = d;
+  else for (; argc && sscanf(*argv, "%lf%c", &d, &c) == 1; --argc, ++argv) {
+    (p->h = lsx_realloc(p->h, p->n * sizeof(*p->h)))[p->n - 1] = d;
+    ++p->n;
+  }
   return argc? lsx_usage(effp) : SOX_SUCCESS;
 }
 
@@ -55,8 +57,10 @@ static int start(sox_effect_t * effp)
       if (!file)
         return SOX_EOF;
       while (fscanf(file, " #%*[^\n]%c", &c) + (i = fscanf(file, "%lf", &d)) >0)
-        if (i > 0)
-          (p->h = lsx_realloc(p->h, ++p->n * sizeof(*p->h)))[p->n - 1] = d;
+        if (i > 0) {
+          (p->h = lsx_realloc(p->h, p->n * sizeof(*p->h)))[p->n - 1] = d;
+          ++p->n;
+        }
       lsx_report("%i coefficients", p->n);
       if (!feof(file)) {
         lsx_fail("error reading coefficient file");
Index: src/pad.c
===================================================================
--- src/pad.c.orig
+++ src/pad.c
@@ -59,7 +59,8 @@ static int create(sox_effect_t * effp, i
 {
   priv_t * p = (priv_t *)effp->priv;
   --argc, ++argv;
-  p->pads = lsx_calloc(p->npads = argc, sizeof(*p->pads));
+  p->npads = argc;
+  p->pads = lsx_calloc(p->npads, sizeof(*p->pads));
   return parse(effp, argv, 1e5); /* No rate yet; parse with dummy */
 }
 
Index: src/remix.c
===================================================================
--- src/remix.c.orig
+++ src/remix.c
@@ -121,7 +121,8 @@ static int create(sox_effect_t * effp, i
     lsx_fail("must specify at least one output channel");
     return SOX_EOF;
   }
-  p->out_specs = lsx_calloc(p->num_out_channels = argc, sizeof(*p->out_specs));
+  p->num_out_channels = argc;
+  p->out_specs = lsx_calloc(p->num_out_channels, sizeof(*p->out_specs));
   return parse(effp, argv, 1); /* No channels yet; parse with dummy */
 }
 
Index: src/splice.c
===================================================================
--- src/splice.c.orig
+++ src/splice.c
@@ -165,7 +165,8 @@ static int create(sox_effect_t * effp, i
     else if (!strcmp(*argv, "-q")) p->fade_type = Cosine_4  , --argc, ++argv;
     else if (!strcmp(*argv, "-h")) p->fade_type = Cosine_2  , --argc, ++argv;
   }
-  p->splices = lsx_calloc(p->nsplices = argc, sizeof(*p->splices));
+  p->nsplices = argc;
+  p->splices = lsx_calloc(p->nsplices, sizeof(*p->splices));
   return parse(effp, argv, 1e5); /* No rate yet; parse with dummy */
 }