Merge commit 'origin/stable'
[pspp-builds.git] / src / language / stats / binomial.c
index 15d0e4032a146c094e5275cd21f25cdfadc71afe..b62b4dce1375a11c11030ca299de2284141261b9 100644 (file)
@@ -112,7 +112,7 @@ do_binomial (const struct dictionary *dict,
           int width = var_get_width (var);
 
          if (var_is_value_missing (var, value, exclude))
-           break;
+           continue;
 
          if ( NULL == cat1[v].value )
            {
@@ -158,16 +158,20 @@ binomial_execute (const struct dataset *ds,
 
   if ( bst->category1 != SYSMIS )
     {
+      int i;
       union value v;
       v.f = bst->category1;
-      cat1->value = value_dup (&v, 0);
+      for (i = 0; i < ost->n_vars; i++)
+       cat1[i].value = value_dup (&v, 0);
     }
 
   if ( bst->category2 != SYSMIS )
     {
+      int i;
       union value v;
       v.f = bst->category2;
-      cat2->value = value_dup (&v, 0);
+      for (i = 0; i < ost->n_vars; i++)
+       cat2[i].value = value_dup (&v, 0);
     }
 
   if (do_binomial (dataset_dict(ds), input, bst, cat1, cat2, exclude))