瀏覽代碼

remove warnings

richarddobson 2 年之前
父節點
當前提交
17d3a3d7fd
共有 1 個文件被更改,包括 10 次插入8 次删除
  1. 10 8
      dev/externals/paprogs/pvplay/mxfft.c

+ 10 - 8
dev/externals/paprogs/pvplay/mxfft.c

@@ -51,7 +51,7 @@ int fft_(float *a, float *b, int nseg, int n, int nspn, int isn)
         /*  b: pointer to array 'banal' */
         /*  b: pointer to array 'banal' */
 {
 {
     int exit_status;
     int exit_status;
-    int nfac[16];       /*  These are one bigger than needed   */
+    int nfac[32];       /* RWD 2023 was 16, suffered off-by-one error */ /*  These are one bigger than needed   */
                         /*  because wish to use Fortran array  */
                         /*  because wish to use Fortran array  */
                         /* index which runs 1 to n, not 0 to n */
                         /* index which runs 1 to n, not 0 to n */
 
 
@@ -77,12 +77,14 @@ int fft_(float *a, float *b, int nseg, int n, int nspn, int isn)
     ntot=abs(nspn*nseg);
     ntot=abs(nspn*nseg);
 
 
     if(isn*ntot == 0){
     if(isn*ntot == 0){
-        sprintf(errstr,"zero in FFT parameters %d %d %d %d",nseg, n, nspn, isn);
+        fprintf(stderr,"zero in FFT parameters %d %d %d %d",nseg, n, nspn, isn);
         return(DATA_ERROR);
         return(DATA_ERROR);
     }
     }
-    for (m=0; !(k%16); nfac[++m]=4,k/=16);
+    for (m=0; !(k%16); nfac[++m]=4,k/=16)
+        ;
     for (j=3,jj=9; jj<=k; j+=2,jj=j*j)
     for (j=3,jj=9; jj<=k; j+=2,jj=j*j)
-        for (; !(k%jj); nfac[++m]=j,k/=jj);
+        for (; !(k%jj); nfac[++m]=j,k/=jj)
+            ;
 
 
         if (k<=4){
         if (k<=4){
             kt = m;
             kt = m;
@@ -106,17 +108,17 @@ int fft_(float *a, float *b, int nseg, int n, int nspn, int isn)
     }
     }
     if(m <= kt+1) 
     if(m <= kt+1) 
         maxp = m + kt + 1;
         maxp = m + kt + 1;
-        if(m+kt > 15) {
-            sprintf(errstr,"FFT parameter n has more than 15 factors : %d", n);
+    if(m+kt > 15) {
+            fprintf(stderr,"FFT parameter n has more than 15 factors : %d", n);
             return(DATA_ERROR);
             return(DATA_ERROR);
     }
     }
-        if(kt!=0){
+    if(kt!=0){
             j = kt;
             j = kt;
         while(j)
         while(j)
             nfac[++m]=nfac[j--];
             nfac[++m]=nfac[j--];
     }
     }
     maxf = nfac[m-kt];
     maxf = nfac[m-kt];
-        if(kt > 0) 
+    if(kt > 0)
         maxf = max(nfac[kt],maxf);
         maxf = max(nfac[kt],maxf);
 
 
 /*  allocate workspace - assume no errors! */
 /*  allocate workspace - assume no errors! */