Browse Source

pca: get rid of VLA

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
tags/n1.1
Michael Niedermayer 13 years ago
parent
commit
24702a91e4
1 changed files with 4 additions and 1 deletions
  1. +4
    -1
      libavutil/pca.c

+ 4
- 1
libavutil/pca.c View File

@@ -32,6 +32,7 @@ typedef struct PCA{
int n;
double *covariance;
double *mean;
double *z;
}PCA;

PCA *ff_pca_init(int n){
@@ -41,6 +42,7 @@ PCA *ff_pca_init(int n){

pca= av_mallocz(sizeof(PCA));
pca->n= n;
pca->z = av_malloc(sizeof(*pca->z) * n);
pca->count=0;
pca->covariance= av_mallocz(sizeof(double)*n*n);
pca->mean= av_mallocz(sizeof(double)*n);
@@ -51,6 +53,7 @@ PCA *ff_pca_init(int n){
void ff_pca_free(PCA *pca){
av_freep(&pca->covariance);
av_freep(&pca->mean);
av_freep(&pca->z);
av_free(pca);
}

@@ -70,7 +73,7 @@ int ff_pca(PCA *pca, double *eigenvector, double *eigenvalue){
int i, j, pass;
int k=0;
const int n= pca->n;
double z[n];
double *z = pca->z;

memset(eigenvector, 0, sizeof(double)*n*n);



Loading…
Cancel
Save