summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libavutil/pca.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/libavutil/pca.c b/libavutil/pca.c
index f7ae350b48..1d88ff300a 100644
--- a/libavutil/pca.c
+++ b/libavutil/pca.c
@@ -41,12 +41,20 @@ PCA *ff_pca_init(int n){
return NULL;
pca= av_mallocz(sizeof(*pca));
+ if (!pca)
+ return NULL;
+
pca->n= n;
pca->z = av_malloc_array(n, sizeof(*pca->z));
pca->count=0;
pca->covariance= av_calloc(n*n, sizeof(double));
pca->mean= av_calloc(n, sizeof(double));
+ if (!pca->z || !pca->covariance || !pca->mean) {
+ ff_pca_free(pca);
+ return NULL;
+ }
+
return pca;
}