diff options
author | torset | 2009-02-05 08:37:28 +0000 |
---|---|---|
committer | torset | 2009-02-05 08:37:28 +0000 |
commit | 3118121aaa26f0d96520d5626c3458817bb67003 (patch) | |
tree | 079be34beb2abf6b03c7dea4fb037538c7661e43 /src | |
parent | 90daea74ec2e71b6d740f870663d768d062da7ae (diff) | |
download | scilab2c-3118121aaa26f0d96520d5626c3458817bb67003.tar.gz scilab2c-3118121aaa26f0d96520d5626c3458817bb67003.tar.bz2 scilab2c-3118121aaa26f0d96520d5626c3458817bb67003.zip |
Add free(to free the malloc) when missing
Diffstat (limited to 'src')
42 files changed, 369 insertions, 45 deletions
diff --git a/src/auxiliaryFunctions/find/testFind.c b/src/auxiliaryFunctions/find/testFind.c index 71db0f31..a685fa07 100644 --- a/src/auxiliaryFunctions/find/testFind.c +++ b/src/auxiliaryFunctions/find/testFind.c @@ -46,6 +46,8 @@ int sfindaTest() { printf("%f ",outBad[0]); printf("\n"); + free(outBad); + free(outGood); return result; } @@ -84,6 +86,8 @@ int dfindaTest() { printf("%f ",outBad[0]); printf("\n"); + free(outBad); + free(outGood); return result; } @@ -134,6 +138,8 @@ int cfindaTest() { printf("%f ",outBad[0]); printf("\n"); + free(outBad); + free(outGood); return result; } @@ -186,6 +192,8 @@ int zfindaTest() { printf("%f ",outBad[0]); printf("\n"); + free(outBad); + free(outGood); return result; } diff --git a/src/auxiliaryFunctions/rand/testRand.c b/src/auxiliaryFunctions/rand/testRand.c index c700df8e..c4ed31f8 100644 --- a/src/auxiliaryFunctions/rand/testRand.c +++ b/src/auxiliaryFunctions/rand/testRand.c @@ -61,7 +61,7 @@ int drandaTest() { printf("%1.20f\n",result[i]); assert(result[i] != nan);} - + free(result); return 0; } @@ -78,6 +78,7 @@ int zrandaTest() { printf("%1.20f+%1.20f\n",zreals(result[i]),zimags(result[i])); assert(zreals(result[i]) != nan);} + free(result); return 0; } diff --git a/src/matrixOperations/chol/cchola.c b/src/matrixOperations/chol/cchola.c index a00718c1..4ebf473e 100644 --- a/src/matrixOperations/chol/cchola.c +++ b/src/matrixOperations/chol/cchola.c @@ -54,6 +54,7 @@ void cchola(floatComplex * in, int size, floatComplex *out){ out[j+i*size]=FloatComplex(0,0); } } + free(tmp); #else /* Do not use Lapack functions*/ diff --git a/src/matrixOperations/chol/schola.c b/src/matrixOperations/chol/schola.c index 1c9e9a6e..79c739b9 100644 --- a/src/matrixOperations/chol/schola.c +++ b/src/matrixOperations/chol/schola.c @@ -46,7 +46,7 @@ void schola(float * in, int size, float *out){ out[j+i*size]=0; } } - + free(tmp); #else /* Do not use Lapack functions*/ int i=0, j=0, k=0; diff --git a/src/matrixOperations/chol/testDoubleChol.c b/src/matrixOperations/chol/testDoubleChol.c index bf58480c..b96888ff 100644 --- a/src/matrixOperations/chol/testDoubleChol.c +++ b/src/matrixOperations/chol/testDoubleChol.c @@ -91,6 +91,7 @@ static void zcholaTest(void){ if (zimags(out[i])>1e-16) assert( (fabs(zimags(out[i])-resI[i]) / fabs(zimags(out[i]))) <1e-15); } + free(out); } diff --git a/src/matrixOperations/determ/cdeterma.c b/src/matrixOperations/determ/cdeterma.c index 343b0a83..f55a6703 100644 --- a/src/matrixOperations/determ/cdeterma.c +++ b/src/matrixOperations/determ/cdeterma.c @@ -138,6 +138,8 @@ floatComplex cdeterma(floatComplex *in, int size){ for (i=0;i<size;i++){ out = cmuls(out,inCopy[i*size+i]); } + free(inCopy); + break; } #endif diff --git a/src/matrixOperations/determ/ddeterma.c b/src/matrixOperations/determ/ddeterma.c index 75ee6ed9..4c1703e1 100644 --- a/src/matrixOperations/determ/ddeterma.c +++ b/src/matrixOperations/determ/ddeterma.c @@ -84,6 +84,8 @@ double ddeterma(double * in, int size){ for (i=0;i<size;i++){ out *= inCopy[i*size+i]; } + free(inCopy); + break; } #endif diff --git a/src/matrixOperations/determ/sdeterma.c b/src/matrixOperations/determ/sdeterma.c index bef0d728..cdb4d1f7 100644 --- a/src/matrixOperations/determ/sdeterma.c +++ b/src/matrixOperations/determ/sdeterma.c @@ -84,6 +84,8 @@ float sdeterma(float * in, int size){ for (i=0;i<size;i++){ out *= inCopy[i*size+i]; } + free(inCopy); + break; } diff --git a/src/matrixOperations/determ/zdeterma.c b/src/matrixOperations/determ/zdeterma.c index 73ab692a..a1d8b879 100644 --- a/src/matrixOperations/determ/zdeterma.c +++ b/src/matrixOperations/determ/zdeterma.c @@ -127,6 +127,8 @@ doubleComplex zdeterma(doubleComplex * in, int size){ for (i=0;i<size;i++){ out = zmuls(out,inCopy[i*size+i]); } + free(inCopy); + break; } #endif return out; diff --git a/src/matrixOperations/division/cldivma.c b/src/matrixOperations/division/cldivma.c index b912a7de..9e95b468 100644 --- a/src/matrixOperations/division/cldivma.c +++ b/src/matrixOperations/division/cldivma.c @@ -10,7 +10,7 @@ * */ - +/******FIXME********/ /**** WARNING NOT WORK AT ALL FOR THE MOMENT ***/ /**** Because of problem of conversion float-> double ****/ #include "matrixDivision.h" diff --git a/src/matrixOperations/division/srdivma.c b/src/matrixOperations/division/srdivma.c index a4ecad61..f1706ccd 100644 --- a/src/matrixOperations/division/srdivma.c +++ b/src/matrixOperations/division/srdivma.c @@ -10,7 +10,7 @@ * */ - +/****FIXME****/ /**** WARNING NOT WORK AT ALL FOR THE MOMENT ***/ /**** Because of problem of conversion float-> double ****/ #include "matrixDivision.h" diff --git a/src/matrixOperations/division/testMatrixRDivision.c b/src/matrixOperations/division/testMatrixRDivision.c index 87c58461..2fb086a7 100644 --- a/src/matrixOperations/division/testMatrixRDivision.c +++ b/src/matrixOperations/division/testMatrixRDivision.c @@ -451,6 +451,9 @@ static void zrdivmaTest ( void ){ assert ( fabs( zimags(out[i]) - zimags (Result[i]) ) / fabs (zimags (out[i])) < 1e-15 ) ; } + + free(Result); + free(out); } static int testRDivma (void) { diff --git a/src/matrixOperations/inversion/dinverma.c b/src/matrixOperations/inversion/dinverma.c index 56161942..6f2508fd 100644 --- a/src/matrixOperations/inversion/dinverma.c +++ b/src/matrixOperations/inversion/dinverma.c @@ -30,6 +30,9 @@ void dinverma ( double* in, double* out, int leadDimIn ) dgetrf_ ( &leadDimIn, &leadDimIn, out, &leadDimIn, vectPivot, &info ); dgetri_ ( &leadDimIn, out, &leadDimIn , vectPivot, work , &leadDimIn , &info ); + + free(vectPivot); + free(work); } diff --git a/src/matrixOperations/inversion/zinverma.c b/src/matrixOperations/inversion/zinverma.c index 8bb69661..bc9d80b1 100644 --- a/src/matrixOperations/inversion/zinverma.c +++ b/src/matrixOperations/inversion/zinverma.c @@ -30,6 +30,7 @@ void zinverma ( doubleComplex* in, doubleComplex* out, int leadDimIn ) zgetrf_ ( &leadDimIn, &leadDimIn, out, &leadDimIn, vectPivot, &info ); zgetri_ ( &leadDimIn, out, &leadDimIn , vectPivot, work , &leadDimIn , &info ); - + free(vectPivot); + free(work); } diff --git a/src/matrixOperations/logm/clogma.c b/src/matrixOperations/logm/clogma.c index ebad5814..f2614b0e 100644 --- a/src/matrixOperations/logm/clogma.c +++ b/src/matrixOperations/logm/clogma.c @@ -30,6 +30,10 @@ void clogma (floatComplex* in, int size, floatComplex* out){ for(i=0;i<size*size;i++) out[i]=FloatComplex( (float)zreals(outCopy[i]),(float)zimags(outCopy[i])); + + + free(inCopy); + free(outCopy); } diff --git a/src/matrixOperations/logm/dlogma.c b/src/matrixOperations/logm/dlogma.c index 0cee3c09..8a4986b5 100644 --- a/src/matrixOperations/logm/dlogma.c +++ b/src/matrixOperations/logm/dlogma.c @@ -23,4 +23,6 @@ void dlogma (double* in, int size, doubleComplex* out){ for (i=0;i<size*size;i++) inCpx[i] = DoubleComplex(in[i],0); zlogma(inCpx, size, out); + + free(inCpx); } diff --git a/src/matrixOperations/logm/slogma.c b/src/matrixOperations/logm/slogma.c index 319c82f2..930bf752 100644 --- a/src/matrixOperations/logm/slogma.c +++ b/src/matrixOperations/logm/slogma.c @@ -26,5 +26,8 @@ void slogma (float* in, int size, floatComplex* out){ zlogma(inCpx, size, outCopy); for(i=0;i<size*size;i++) - out[i]=FloatComplex( (float)zreals(outCopy[i]),(float)zimags(outCopy[i])); + out[i]=FloatComplex( (float)zreals(outCopy[i]),(float)zimags(outCopy[i])); + + free(inCpx); + free(outCopy); } diff --git a/src/matrixOperations/logm/testDoubleLogm.c b/src/matrixOperations/logm/testDoubleLogm.c index 44deb745..8b31b857 100644 --- a/src/matrixOperations/logm/testDoubleLogm.c +++ b/src/matrixOperations/logm/testDoubleLogm.c @@ -31,6 +31,9 @@ static void zlogmaTest(void){ zlogma(in,3,out); for(i=0;i<9;i++) printf("out[%d] = %f + %f *i\n",i,zreals(out[i]),zimags(out[i])); + + free(in); + free(out); } static int logmTest(void){ diff --git a/src/matrixOperations/logm/zlogma.c b/src/matrixOperations/logm/zlogma.c index 8fb2fa38..37516822 100644 --- a/src/matrixOperations/logm/zlogma.c +++ b/src/matrixOperations/logm/zlogma.c @@ -103,5 +103,13 @@ void zlogma (doubleComplex* in, int size, doubleComplex* out){ /* Vp * diag(log(diag(vp))*inv(Vp) */ zmulma(tmp, size, size, eigenvectors, size, size, out); + + free(eigenvalues); + free(eigenvectors); + free(tmp); + free(pdblWork); + free(pdblRWork); + free(inCopy); + } diff --git a/src/signalProcessing/conv/cconva.c b/src/signalProcessing/conv/cconva.c index 66b7989a..99f0b1de 100644 --- a/src/signalProcessing/conv/cconva.c +++ b/src/signalProcessing/conv/cconva.c @@ -44,6 +44,10 @@ void cconva(floatComplex *in1, int size1, floatComplex *in2,int size2, floatComp for (i=0;i<size1+size2-1;i++){ out[i]=result[i]; } + + free(in1b); + free(in2b); + free(result); } diff --git a/src/signalProcessing/conv/sconva.c b/src/signalProcessing/conv/sconva.c index 55f06834..09288381 100644 --- a/src/signalProcessing/conv/sconva.c +++ b/src/signalProcessing/conv/sconva.c @@ -36,6 +36,8 @@ void sconva(float *in1, int size1, float *in2,int size2, float *out){ creala(result,size1+size2-1,out); free(result); + free(in1Cpx); + free(in2Cpx); } diff --git a/src/signalProcessing/crossCorr/ccrossCorra.c b/src/signalProcessing/crossCorr/ccrossCorra.c index 2310520e..bd61305b 100644 --- a/src/signalProcessing/crossCorr/ccrossCorra.c +++ b/src/signalProcessing/crossCorr/ccrossCorra.c @@ -26,7 +26,8 @@ void ccrossCorra(floatComplex* in1, int rows1, int cols1, floatComplex* in2, int for (i=0;i<(rows2*cols2);i++) in2Copy[i]=cconjs(in2[rows2*cols2-1-i]); cconv2da(in1, rows1, cols1, in2Copy, rows2, cols2, out); - + + free(in2Copy); } diff --git a/src/signalProcessing/crossCorr/dcrossCorra.c b/src/signalProcessing/crossCorr/dcrossCorra.c index e537f7f4..b34176a9 100644 --- a/src/signalProcessing/crossCorr/dcrossCorra.c +++ b/src/signalProcessing/crossCorr/dcrossCorra.c @@ -21,12 +21,14 @@ void dcrossCorra(double* in1, int rows1, int cols1, double* in2, int rows2, int double *in2Copy; int i; - in2Copy=malloc((uint)rows2*sizeof(double)); + in2Copy=malloc((uint)(rows2*cols2)*sizeof(double)); /* We change in2 to be in appropriate form in in2Copy*/ for (i=0;i<(rows2*cols2);i++) in2Copy[i]=in2[rows2*cols2-1-i]; dconv2da(in1, rows1, cols1, in2Copy, rows2, cols2, out); + + free(in2Copy); } diff --git a/src/signalProcessing/crossCorr/scrossCorra.c b/src/signalProcessing/crossCorr/scrossCorra.c index bd2013ed..9c592c2b 100644 --- a/src/signalProcessing/crossCorr/scrossCorra.c +++ b/src/signalProcessing/crossCorr/scrossCorra.c @@ -19,11 +19,13 @@ void scrossCorra(float* in1, int rows1, int cols1, float* in2, int rows2, int co float *in2Copy; int i; - in2Copy=malloc((uint)rows2*sizeof(float)); + in2Copy=malloc((uint)(rows2*cols2)*sizeof(float)); /* We change in2 to be in appropriate form in in2Copy*/ for (i=0;i<(rows2*cols2);i++) in2Copy[i]=in2[rows2*cols2-1-i]; sconv2da(in1, rows1, cols1, in2Copy, rows2, cols2, out); + + free(in2Copy); } diff --git a/src/signalProcessing/crossCorr/testDoubleCrossCorr.c b/src/signalProcessing/crossCorr/testDoubleCrossCorr.c index 20847fd3..96f00530 100644 --- a/src/signalProcessing/crossCorr/testDoubleCrossCorr.c +++ b/src/signalProcessing/crossCorr/testDoubleCrossCorr.c @@ -43,7 +43,7 @@ static void dcrossCorraTest(void){ } } - +/*FIXME : aucun test pour les complexes*/ static void zcrossCorraTest(void){ } diff --git a/src/signalProcessing/crossCorr/testFloatCrossCorr.c b/src/signalProcessing/crossCorr/testFloatCrossCorr.c index 603227ed..aace4b9e 100644 --- a/src/signalProcessing/crossCorr/testFloatCrossCorr.c +++ b/src/signalProcessing/crossCorr/testFloatCrossCorr.c @@ -29,7 +29,7 @@ static void scrossCorraTest(void){ } } - +/*FIXME : aucun test pour les complexes*/ static void ccrossCorraTest(void){ } diff --git a/src/signalProcessing/crossCorr/zcrossCorra.c b/src/signalProcessing/crossCorr/zcrossCorra.c index 49ac5a7a..fbb86217 100644 --- a/src/signalProcessing/crossCorr/zcrossCorra.c +++ b/src/signalProcessing/crossCorr/zcrossCorra.c @@ -26,6 +26,8 @@ void zcrossCorra(doubleComplex* in1, int rows1, int cols1, doubleComplex* in2, i for (i=0;i<(rows2*cols2);i++) in2Copy[i]=zconjs(in2[rows2*cols2-1-i]); zconv2da(in1, rows1, cols1, in2Copy, rows2, cols2, out); + + free(in2Copy); } diff --git a/src/signalProcessing/fft/dfftbi.c b/src/signalProcessing/fft/dfftbi.c index ad0fb0f1..8ddef44f 100644 --- a/src/signalProcessing/fft/dfftbi.c +++ b/src/signalProcessing/fft/dfftbi.c @@ -315,5 +315,8 @@ c ********************************************* lnow = istak[lnow-1] ; in-- ; } + free(istak); + free(rstak); + return ; } diff --git a/src/signalProcessing/fft/testDoubleFft.c b/src/signalProcessing/fft/testDoubleFft.c index 1de431d6..36a5c391 100644 --- a/src/signalProcessing/fft/testDoubleFft.c +++ b/src/signalProcessing/fft/testDoubleFft.c @@ -352,7 +352,10 @@ static void zfftmaTest2 (void ) assert ( fabs( zimags(out[i]) - zimags (Result[i]) ) / fabs (zimags (out[i])) < 1e-12 ) ; } - + + free(out); + free(in); + free(Result); } @@ -404,7 +407,10 @@ static void zfftmaTest3 (void ) assert ( fabs( zimags(out[i]) - zimags (Result[i]) ) / fabs (zimags (out[i])) < 1e-12 ) ; } - + + free(out); + free(in); + free(Result); } @@ -450,7 +456,10 @@ static void zfftmaTest4 (void ) assert ( fabs( zimags(out[i]) - zimags (Result[i]) ) / fabs (zimags (out[i])) < 1e-12 ) ; } - + + free(out); + free(in); + free(Result); } @@ -504,7 +513,10 @@ static void zfftmaTest5 (void ) } - + + free(out); + free(in); + free(Result); } @@ -556,7 +568,10 @@ static void zfftmaTest6 (void ) assert ( fabs( zimags(out[i]) - zimags (Result[i]) ) / fabs (zimags (out[i])) < 1e-12 ) ; } - + + free(out); + free(in); + free(Result); } @@ -609,7 +624,10 @@ static void zfftmaTest7 (void ) assert ( fabs( zimags(out[i]) - zimags (Result[i]) ) / fabs (zimags (out[i])) < 1e-12 ) ; } - + + free(out); + free(in); + free(Result); } @@ -654,7 +672,10 @@ static void zfftmaTest8 (void ) assert ( fabs( zimags(out[i]) - zimags (Result[i]) ) / fabs (zimags (out[i])) < 1e-12 ) ; } - + + free(out); + free(in); + free(Result); } @@ -700,7 +721,10 @@ static void zfftmaTest9 (void ) assert ( fabs( zimags(out[i]) - zimags (Result[i]) ) / fabs (zimags (out[i])) < 1e-12 ) ; } - + + free(out); + free(in); + free(Result); } @@ -755,7 +779,9 @@ static void zfftmaTest10 (void ) assert ( fabs( zimags(out[i]) - tImagResult[i] ) / fabs (zimags (out[i])) < 1e-12 ) ; } - + + free(out); + free(in); } static void zfftmaTest11 (void ) @@ -809,7 +835,9 @@ static void zfftmaTest11 (void ) assert ( fabs( zimags(out[i]) - tImagResult[i] ) / fabs (zimags (out[i])) < 1e-12 ) ; } - + + free(out); + free(in); } @@ -864,7 +892,9 @@ static void zfftmaTest12 (void ) assert ( fabs( zimags(out[i]) - tImagResult[i] ) / fabs (zimags (out[i])) < 1e-12 ) ; } - + + free(out); + free(in); } @@ -919,7 +949,9 @@ static void zfftmaTest13 (void ) assert ( fabs( zimags(out[i]) - tImagResult[i] ) / fabs (zimags (out[i])) < 1e-12 ) ; } - + + free(out); + free(in); } @@ -974,7 +1006,9 @@ static void zfftmaTest14 (void ) assert ( fabs( zimags(out[i]) - tImagResult[i] ) / fabs (zimags (out[i])) < 1e-12 ) ; } - + + free(out); + free(in); } @@ -1030,7 +1064,9 @@ static void zfftmaTest15 (void ) assert ( fabs( zimags(out[i]) - tImagResult[i] ) / fabs (zimags (out[i])) < 1e-12 ) ; } - + + free(out); + free(in); } @@ -1086,7 +1122,9 @@ static void zfftmaTest16 (void ) assert ( fabs( zimags(out[i]) - tImagResult[i] ) / fabs (zimags (out[i])) < 1e-12 ) ; } - + + free(out); + free(in); } @@ -1142,7 +1180,9 @@ static void zfftmaTest32 (void ) assert ( fabs( zimags(out[i]) - tImagResult[i] ) / fabs (zimags (out[i])) < 1e-12 ) ; } - + + free(out); + free(in); } static int testFft(void) { diff --git a/src/signalProcessing/fft/testFloatFft.c b/src/signalProcessing/fft/testFloatFft.c index 46bef567..3405b767 100644 --- a/src/signalProcessing/fft/testFloatFft.c +++ b/src/signalProcessing/fft/testFloatFft.c @@ -355,7 +355,9 @@ static void cfftmaTest2 (void ) } - + free(out); + free(in); + free(Result); } static void cfftmaTest3 (void ) @@ -408,6 +410,9 @@ static void cfftmaTest3 (void ) } + free(out); + free(in); + free(Result); } @@ -453,6 +458,9 @@ static void cfftmaTest4 (void ) } + free(out); + free(in); + free(Result); } @@ -506,6 +514,9 @@ static void cfftmaTest5 (void ) } + free(out); + free(in); + free(Result); } @@ -560,6 +571,9 @@ static void cfftmaTest6 (void ) } + free(out); + free(in); + free(Result); } @@ -612,6 +626,9 @@ static void cfftmaTest7 (void ) } + free(out); + free(in); + free(Result); } @@ -657,6 +674,9 @@ static void cfftmaTest8 (void ) } + free(out); + free(in); + free(Result); } @@ -703,6 +723,9 @@ static void cfftmaTest9 (void ) } + free(out); + free(in); + free(Result); } @@ -758,6 +781,8 @@ static void cfftmaTest10 (void ) } + free(out); + free(in); } static void cfftmaTest11 (void ) @@ -812,6 +837,8 @@ static void cfftmaTest11 (void ) } + free(out); + free(in); } @@ -867,6 +894,8 @@ static void cfftmaTest12 (void ) } + free(out); + free(in); } @@ -922,6 +951,8 @@ static void cfftmaTest13 (void ) } + free(out); + free(in); } @@ -977,6 +1008,8 @@ static void cfftmaTest14 (void ) } + free(out); + free(in); } @@ -1033,6 +1066,8 @@ static void cfftmaTest15 (void ) } + free(out); + free(in); } @@ -1089,6 +1124,8 @@ static void cfftmaTest16 (void ) } + free(out); + free(in); } @@ -1145,6 +1182,8 @@ static void cfftmaTest32 (void ) } + free(out); + free(in); } static int testFft(void) { diff --git a/src/signalProcessing/fft/testMatFft.c b/src/signalProcessing/fft/testMatFft.c index d199c042..ee29cf72 100644 --- a/src/signalProcessing/fft/testMatFft.c +++ b/src/signalProcessing/fft/testMatFft.c @@ -213,6 +213,19 @@ static int testFft(void){ else assert(1); } + + free(in1); + free(in2); + free(in3); + free(in4); + free(in6); + free(in9); + free(out1); + free(out2); + free(out3); + free(out4); + free(out6); + free(out9); return 0; } diff --git a/src/signalProcessing/fft/zfftma.c b/src/signalProcessing/fft/zfftma.c index 5cdbf40a..24b0a7ad 100644 --- a/src/signalProcessing/fft/zfftma.c +++ b/src/signalProcessing/fft/zfftma.c @@ -146,6 +146,10 @@ void zfftma ( doubleComplex* in , int rows, int cols, doubleComplex* out) } } - + + free(realIn); + free(imagIn); + free(inCopy); + free(inTemp); } diff --git a/src/signalProcessing/hilbert/testHilbert.c b/src/signalProcessing/hilbert/testHilbert.c index d4d091d8..8a41760d 100644 --- a/src/signalProcessing/hilbert/testHilbert.c +++ b/src/signalProcessing/hilbert/testHilbert.c @@ -516,7 +516,23 @@ static void dhilbertaTest(void){ else assert(1); } - + free(out2); + free(out3); + free(out4); + free(out5); + free(out7); + + free(out12); + free(out13); + free(out14); + free(out15); + free(out17); + + free(out31); + free(out32); + free(out34); + free(out35); + free(out37); } static void shilbertaTest(void){ @@ -794,7 +810,24 @@ static void shilbertaTest(void){ if (cimags(out37[i])>1e-16) assert( (fabs(cimags(out37[i])+resI37[i]) / fabs(cimags(out37[i])) )<1e-5); else assert(1); } - + + free(out2); + free(out3); + free(out4); + free(out5); + free(out7); + + free(out12); + free(out13); + free(out14); + free(out15); + free(out17); + + free(out31); + free(out32); + free(out34); + free(out35); + free(out37); } diff --git a/src/signalProcessing/ifft/difftbi.c b/src/signalProcessing/ifft/difftbi.c index e4cf74d7..2b60ef27 100644 --- a/src/signalProcessing/ifft/difftbi.c +++ b/src/signalProcessing/ifft/difftbi.c @@ -314,5 +314,8 @@ c ********************************************* lnow = istak[lnow-1] ; in-- ; } - return ; + + free(istak); + free(rstak); + return ; } diff --git a/src/signalProcessing/ifft/testDoubleIfft.c b/src/signalProcessing/ifft/testDoubleIfft.c index 3f304789..bf188e1e 100644 --- a/src/signalProcessing/ifft/testDoubleIfft.c +++ b/src/signalProcessing/ifft/testDoubleIfft.c @@ -396,6 +396,9 @@ static void zifftmaTest2 (void ) } + free(out); + free(in); + free(Result); } @@ -448,6 +451,10 @@ static void zifftmaTest3 (void ) } + free(out); + free(in); + free(Result); + } @@ -494,6 +501,10 @@ static void zifftmaTest4 (void ) */ } + free(out); + free(in); + free(Result); + } @@ -547,6 +558,10 @@ static void zifftmaTest5 (void ) } + free(out); + free(in); + free(Result); + } @@ -600,6 +615,10 @@ static void zifftmaTest6 (void ) } + free(out); + free(in); + free(Result); + } @@ -653,6 +672,10 @@ static void zifftmaTest7 (void ) } + free(out); + free(in); + free(Result); + } @@ -698,6 +721,10 @@ static void zifftmaTest8 (void ) */ } + free(out); + free(in); + free(Result); + } @@ -744,6 +771,10 @@ static void zifftmaTest9 (void ) } + free(out); + free(in); + free(Result); + } @@ -799,6 +830,9 @@ static void zifftmaTest10 (void ) } + free(out); + free(in); + } static void zifftmaTest11 (void ) @@ -853,6 +887,9 @@ static void zifftmaTest11 (void ) } + free(out); + free(in); + } @@ -908,6 +945,9 @@ static void zifftmaTest12 (void ) } + free(out); + free(in); + } @@ -963,6 +1003,9 @@ static void zifftmaTest13 (void ) } + free(out); + free(in); + } @@ -1018,6 +1061,9 @@ static void zifftmaTest14 (void ) } + free(out); + free(in); + } @@ -1074,6 +1120,9 @@ static void zifftmaTest15 (void ) } + free(out); + free(in); + } @@ -1130,6 +1179,9 @@ static void zifftmaTest16 (void ) } + free(out); + free(in); + } @@ -1186,6 +1238,10 @@ static void zifftmaTest32 (void ) } + free(out); + free(in); + + } static int testFft(void) { diff --git a/src/signalProcessing/ifft/testFloatIfft.c b/src/signalProcessing/ifft/testFloatIfft.c index af73d6ac..4dc0f442 100644 --- a/src/signalProcessing/ifft/testFloatIfft.c +++ b/src/signalProcessing/ifft/testFloatIfft.c @@ -393,6 +393,9 @@ static void cifftmaTest2 (void ) } + free(out); + free(in); + free(Result); } @@ -444,7 +447,9 @@ static void cifftmaTest3 (void ) assert ( fabs( cimags(out[i]) - cimags (Result[i]) ) / fabs (cimags (out[i])) < 1e-4 ) ; */ } - + free(out); + free(in); + free(Result); } @@ -490,7 +495,9 @@ static void cifftmaTest4 (void ) assert ( fabs( cimags(out[i]) - cimags (Result[i]) ) / fabs (cimags (out[i])) < 1e-4 ) ; */ } - + free(out); + free(in); + free(Result); } @@ -543,7 +550,9 @@ static void cifftmaTest5 (void ) assert ( fabs( cimags(out[i]) - cimags (Result[i]) ) / fabs (cimags (out[i])) < 1e-4 ) ; } - + free(out); + free(in); + free(Result); } @@ -596,7 +605,9 @@ static void cifftmaTest6 (void ) assert ( fabs( cimags(out[i]) - cimags (Result[i]) ) / fabs (cimags (out[i])) < 1e-4 ) ; } - + free(out); + free(in); + free(Result); } @@ -649,7 +660,9 @@ static void cifftmaTest7 (void ) assert ( fabs( cimags(out[i]) - cimags (Result[i]) ) / fabs (cimags (out[i])) < 1e-4 ) ; } - + free(out); + free(in); + free(Result); } @@ -694,7 +707,9 @@ static void cifftmaTest8 (void ) assert ( fabs( cimags(out[i]) - cimags (Result[i]) ) / fabs (cimags (out[i])) < 1e-4 ) ; } - + free(out); + free(in); + free(Result); } @@ -740,7 +755,9 @@ static void cifftmaTest9 (void ) assert ( fabs( cimags(out[i]) - cimags (Result[i]) ) / fabs (cimags (out[i])) < 1e-4 ) ; } - + free(out); + free(in); + free(Result); } @@ -795,7 +812,8 @@ static void cifftmaTest10 (void ) assert ( fabs( cimags(out[i]) - tImagResult[i] ) / fabs (cimags (out[i])) < 1e-4 ) ; } - + free(out); + free(in); } static void cifftmaTest11 (void ) @@ -849,6 +867,8 @@ static void cifftmaTest11 (void ) assert ( fabs( cimags(out[i]) - tImagResult[i] ) / fabs (cimags (out[i])) < 1e-4 ) ; } + free(out); + free(in); } @@ -904,6 +924,8 @@ static void cifftmaTest12 (void ) assert ( fabs( cimags(out[i]) - tImagResult[i] ) / fabs (cimags (out[i])) < 1e-4 ) ; } + free(out); + free(in); } @@ -959,6 +981,8 @@ static void cifftmaTest13 (void ) assert ( fabs( cimags(out[i]) - tImagResult[i] ) / fabs (cimags (out[i])) < 1e-4 ) ; } + free(out); + free(in); } @@ -1014,6 +1038,8 @@ static void cifftmaTest14 (void ) assert ( fabs( cimags(out[i]) - tImagResult[i] ) / fabs (cimags (out[i])) < 1e-4 ) ; } + free(out); + free(in); } @@ -1070,6 +1096,8 @@ static void cifftmaTest15 (void ) assert ( fabs( cimags(out[i]) - tImagResult[i] ) / fabs (cimags (out[i])) < 1e-4 ) ; } + free(out); + free(in); } @@ -1126,6 +1154,8 @@ static void cifftmaTest16 (void ) assert ( fabs( cimags(out[i]) - tImagResult[i] ) / fabs (cimags (out[i])) < 1e-4 ) ; } + free(out); + free(in); } @@ -1182,6 +1212,8 @@ static void cifftmaTest32 (void ) assert ( fabs( cimags(out[i]) - tImagResult[i] ) / fabs (cimags (out[i])) < 1e-4 ) ; } + free(out); + free(in); } diff --git a/src/signalProcessing/ifft/testMatIfft.c b/src/signalProcessing/ifft/testMatIfft.c index 5973f1fe..60e74607 100644 --- a/src/signalProcessing/ifft/testMatIfft.c +++ b/src/signalProcessing/ifft/testMatIfft.c @@ -212,7 +212,19 @@ static int testIfft(void){ if (zimags(out9[i])>1e-15) assert( (fabs(zimags(out9[i])-resI9[i]) / fabs(zimags(out9[i]))) < 1e-15 ); else assert(1); - } + } + free(in1); + free(in2); + free(in3); + free(in4); + free(in6); + free(in9); + free(out1); + free(out2); + free(out3); + free(out4); + free(out6); + free(out9); return 0; } diff --git a/src/signalProcessing/ifft/zifftma.c b/src/signalProcessing/ifft/zifftma.c index 316d3f5b..b02f0fed 100644 --- a/src/signalProcessing/ifft/zifftma.c +++ b/src/signalProcessing/ifft/zifftma.c @@ -147,6 +147,11 @@ void zifftma ( doubleComplex* in , int rows, int cols, doubleComplex* out) } } + + free(realIn); + free(imagIn); + free(inCopy); + free(inTemp); } diff --git a/src/signalProcessing/lpc2cep/dlpc2cepa.c b/src/signalProcessing/lpc2cep/dlpc2cepa.c index d16da102..ebae7549 100644 --- a/src/signalProcessing/lpc2cep/dlpc2cepa.c +++ b/src/signalProcessing/lpc2cep/dlpc2cepa.c @@ -31,5 +31,7 @@ void dlpc2cepa(double* in, int size, double* out){ zifftma(inCpx,size, size, inCpx); zreala(inCpx,size*size,out); + + free(inCpx); } diff --git a/src/signalProcessing/lpc2cep/slpc2cepa.c b/src/signalProcessing/lpc2cep/slpc2cepa.c index e9640f09..bcf153ad 100644 --- a/src/signalProcessing/lpc2cep/slpc2cepa.c +++ b/src/signalProcessing/lpc2cep/slpc2cepa.c @@ -30,6 +30,8 @@ void slpc2cepa(float *in, int size, float*out){ cifftma(inCpx,size,size,inCpx); creala(inCpx,size*size,out); + + free(inCpx); } diff --git a/src/statisticsFunctions/variance/testDoubleVarianceNono.c b/src/statisticsFunctions/variance/testDoubleVarianceNono.c index e1047238..92f76b81 100644 --- a/src/statisticsFunctions/variance/testDoubleVarianceNono.c +++ b/src/statisticsFunctions/variance/testDoubleVarianceNono.c @@ -48,6 +48,9 @@ static int doubleVariance(void){ for (i=0;i<4;i++)assert(fabs(outRows[i]-resultRows[i])/fabs(outRows[i]) <1e-16); for (i=0;i<5;i++)assert(fabs(outColumns[i]-resultColumns[i])/fabs(outColumns[i]) <1e-16); + + free(outColumns); + free(outRows); } @@ -119,7 +122,9 @@ static int doubleVariance(void){ for (i=0;i<10;i++)assert(fabs(outRows2[i]-resultRows2[i])/fabs(outRows2[i]) <1e-16); for (i=0;i<7;i++)assert(fabs(outColumns2[i]-resultColumns2[i])/fabs(outColumns2[i]) <1e-16); - + + free(outColumns2); + free(outRows2); } @@ -187,7 +192,9 @@ static int doubleComplexVariance(void){ assert(fabs(zimags(outCol[i])-colVarianceI[i])/fabs(zimags(outCol[i])) <1e-15); } - + free(in); + free(outCol); + free(outRow); } @@ -325,6 +332,9 @@ static int doubleComplexVariance(void){ assert(fabs(zreals(outCol[i])-colVarianceR[i])/fabs(zreals(outCol[i])) <1e-15); assert(fabs(zimags(outCol[i])-colVarianceI[i])/fabs(zimags(outCol[i])) <1e-14); } + free(in); + free(outCol); + free(outRow); } diff --git a/src/statisticsFunctions/variance/testFloatVarianceNono.c b/src/statisticsFunctions/variance/testFloatVarianceNono.c index dff7d4e1..71c9b859 100644 --- a/src/statisticsFunctions/variance/testFloatVarianceNono.c +++ b/src/statisticsFunctions/variance/testFloatVarianceNono.c @@ -48,7 +48,9 @@ static int floatVariance(void){ for (i=0;i<4;i++)assert(fabs(outRows[i]-resultRows[i])/fabs(outRows[i]) <1e-06); for (i=0;i<5;i++)assert(fabs(outColumns[i]-resultColumns[i])/fabs(outColumns[i]) <1e-06); - + + free(outColumns); + free(outRows); } @@ -118,7 +120,10 @@ static int floatVariance(void){ assert(fabs(out2-result2)/fabs(out2) <1e-06); for (i=0;i<10;i++)assert(fabs(outRows2[i]-resultRows2[i])/fabs(outRows2[i]) <1e-06); - for (i=0;i<7;i++)assert(fabs(outColumns2[i]-resultColumns2[i])/fabs(outColumns2[i]) <1e-06); + for (i=0;i<7;i++)assert(fabs(outColumns2[i]-resultColumns2[i])/fabs(outColumns2[i]) <1e-06); + + free(outColumns2); + free(outRows2); } @@ -187,6 +192,9 @@ static int floatComplexVariance(void){ assert(fabs(cimags(outCol[i])-colVarianceI[i])/fabs(cimags(outCol[i])) <1e-5); } + free(in); + free(outCol); + free(outRow); } @@ -326,6 +334,9 @@ static int floatComplexVariance(void){ assert(fabs(cimags(outCol[i])-colVarianceI[i])/fabs(cimags(outCol[i])) <1e-5); } + free(in); + free(outCol); + free(outRow); } return 0; |