Move call to categoricals_done earlier in the covariance code
authorJohn Darrington <john@darrington.wattle.id.au>
Fri, 22 Jul 2011 13:03:10 +0000 (15:03 +0200)
committerJohn Darrington <john@darrington.wattle.id.au>
Tue, 26 Jul 2011 10:36:39 +0000 (12:36 +0200)
src/language/stats/glm.c
src/math/covariance.c

index 8e3b07f458d45cc0edcd7aaa4444669cfca4f8b1..1eaf1a988a335264a5db70d9cd3bc137363c7602 100644 (file)
@@ -427,8 +427,6 @@ run_glm (struct glm_spec *cmd, struct casereader *input,
     }
   casereader_destroy (reader);
 
-  categoricals_done (ws.cats);
-
   for (reader = input;
        (c = casereader_read (reader)) != NULL; case_unref (c))
     {
index b37da3d22930732878dae815c4435efaad8edbe1..f64e89d1eb2ffbee673c2179e6d2e48b78d066f3 100644 (file)
@@ -347,6 +347,9 @@ covariance_accumulate_pass2 (struct covariance *cov, const struct ccase *c)
       assert (cov->state == 1);
       cov->state = 2;
 
+      if (cov->categoricals)
+       categoricals_done (cov->categoricals);
+
       cov->dim = cov->n_vars;
       
       if (cov->categoricals)
@@ -362,9 +365,6 @@ covariance_accumulate_pass2 (struct covariance *cov, const struct ccase *c)
          cov->moments[i] = resize_matrix (cov->moments[i], cov->dim);
        }
 
-      //      if (cov->categoricals)
-      //       categoricals_done (cov->categoricals);
-
       /* Populate the moments matrices with the categorical value elements */
       for (i = cov->n_vars; i < cov->dim; ++i)
        {