projects
/
pspp-builds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix crash on Windows when calculating a covariance matrix of dimension 1.
[pspp-builds.git]
/
src
/
math
/
covariance.c
diff --git
a/src/math/covariance.c
b/src/math/covariance.c
index dc3166923d7ddff670d903274caef1dfe548beb4..d03f6ad07a3039955047a687d7c9115cb99178c1 100644
(file)
--- 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;
const struct variable *weight, enum mv_class exclude)
{
size_t i;
- struct covariance *cov = x
m
alloc (sizeof *cov);
+ struct covariance *cov = x
z
alloc (sizeof *cov);
cov->passes = 1;
cov->state = 0;
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->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;
cov->categoricals = NULL;
return cov;