X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fmath%2Fcovariance.c;h=d03f6ad07a3039955047a687d7c9115cb99178c1;hb=930138c8279976294019300966e1fb842173f762;hp=dc3166923d7ddff670d903274caef1dfe548beb4;hpb=706a317592761872bc0c432cad854207f40f0870;p=pspp-builds.git diff --git a/src/math/covariance.c b/src/math/covariance.c index dc316692..d03f6ad0 100644 --- a/src/math/covariance.c +++ b/src/math/covariance.c @@ -135,7 +135,7 @@ covariance_1pass_create (size_t n_vars, const struct variable **vars, const struct variable *weight, enum mv_class exclude) { size_t i; - struct covariance *cov = xmalloc (sizeof *cov); + struct covariance *cov = xzalloc (sizeof *cov); cov->passes = 1; cov->state = 0; @@ -156,7 +156,8 @@ covariance_1pass_create (size_t n_vars, const struct variable **vars, cov->n_cm = (n_vars * (n_vars - 1) ) / 2; - cov->cm = xcalloc (sizeof *cov->cm, cov->n_cm); + if (cov->n_cm > 0) + cov->cm = xcalloc (sizeof *cov->cm, cov->n_cm); cov->categoricals = NULL; return cov;