pspp-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Pspp-cvs] pspp/src/language/stats regression.q


From: Jason H Stover
Subject: [Pspp-cvs] pspp/src/language/stats regression.q
Date: Wed, 05 Apr 2006 01:57:16 +0000

CVSROOT:        /sources/pspp
Module name:    pspp
Branch:         
Changes by:     Jason H Stover <address@hidden> 06/04/05 01:57:16

Modified files:
        src/language/stats: regression.q 

Log message:
        fixed EXPORT command segfault

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/pspp/pspp/src/language/stats/regression.q.diff?tr1=1.6&tr2=1.7&r1=text&r2=text

Patches:
Index: pspp/src/language/stats/regression.q
diff -u pspp/src/language/stats/regression.q:1.6 
pspp/src/language/stats/regression.q:1.7
--- pspp/src/language/stats/regression.q:1.6    Mon Apr  3 20:07:54 2006
+++ pspp/src/language/stats/regression.q        Wed Apr  5 01:57:16 2006
@@ -599,6 +599,23 @@
           "if (strncmp (v_name, model_depvars[i], PSPP_REG_MAXLEN) == 
0)\n\t\t{\n\t\t\t");
   fprintf (fp, "return i;\n\t\t}\n\t}\n}\n");
 }
+static int
+reg_has_categorical (pspp_linreg_cache * c)
+{
+  int i;
+  const struct variable *v;
+  
+  for (i = 1; i < c->n_coeffs; i++)
+    {
+      v = pspp_linreg_coeff_get_var (c->coeff + i, 0);
+      if (v->type == ALPHA)
+       {
+         return 1;
+       }
+    }
+  return 0;
+}
+
 static void
 subcommand_export (int export, pspp_linreg_cache * c)
 {
@@ -618,7 +635,10 @@
       assert (fp != NULL);
       fprintf (fp, "%s", reg_preamble);
       reg_print_getvar (fp, c);
-      reg_print_categorical_encoding (fp, c);
+      if (reg_has_categorical (c))
+       {
+         reg_print_categorical_encoding (fp, c);
+       }
       fprintf (fp, "%s", reg_export_t_quantiles_1);
       increment = 0.5 / (double) increment;
       for (i = 0; i < n_quantiles - 1; i++)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]