Fix problem opening files with non-ascii names on Windows
[pspp-builds.git] / src / math / coefficient.c
index 2feeedbaa8f2aff28ace93a23cd0a72fd0d43436..b3dccc518733a8a079d50e9c11a8b65cbdbc00dd 100644 (file)
@@ -1,5 +1,5 @@
 /* PSPP - a program for statistical analysis.
-   Copyright (C) 2005 Free Software Foundation, Inc.
+   Copyright (C) 2005, 2009, 2010 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -159,18 +159,16 @@ pspp_coeff_var_to_coeff (const struct variable *v, struct pspp_coeff **coefs,
 {
   size_t i = 0;
   size_t j = 0;
-  size_t v_idx;
-  int found = 0;
+
   struct pspp_coeff *result = NULL;
 
   if (v != NULL)
     {
-      v_idx = var_get_dict_index (v);
       while (i < n_coef)
        {
          if (coefs[i]->v_info != NULL)
            {
-             if (var_get_dict_index (coefs[i]->v_info->v) == v_idx)
+             if (coefs[i]->v_info->v == v)
                {
                  break;
                }
@@ -185,9 +183,12 @@ pspp_coeff_var_to_coeff (const struct variable *v, struct pspp_coeff **coefs,
           */
          if (val != NULL)
            {
+              int width = var_get_width (v);
+
              j = i;
-             while (j < n_coef && compare_values (pspp_coeff_get_value (coefs[j], v),
-                                                  val, var_get_width (v)) != 0)
+             while (j < n_coef
+                     && value_compare_3way (pspp_coeff_get_value (coefs[j], v),
+                                            val, width) != 0)
                {
                  j++;
                }