X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fmath%2Fcovariance.c;h=61f54f50752704e7e9717378574930f3a01b4752;hb=51356a3a547f953fdfe710aae94b72ac9e40e562;hp=dc3166923d7ddff670d903274caef1dfe548beb4;hpb=56c42d61d46aea9d13dcf55e9e2252805282570b;p=pspp diff --git a/src/math/covariance.c b/src/math/covariance.c index dc3166923d..61f54f5075 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; @@ -266,6 +267,7 @@ get_val (const struct covariance *cov, int i, const struct ccase *c) return categoricals_get_binary_by_subscript (cov->categoricals, i - cov->n_vars, c); } +#if 0 void dump_matrix (const gsl_matrix *m) { @@ -278,6 +280,7 @@ dump_matrix (const gsl_matrix *m) printf ("\n"); } } +#endif /* Call this function for every case in the data set */ void @@ -642,7 +645,6 @@ static const gsl_matrix * covariance_calculate_single_pass_unnormalized (struct covariance *cov) { size_t i, j; - size_t m; for (i = 0 ; i < cov->dim; ++i) {