--- src/lib/eet_data.c-OLD	Tue Jan 10 13:02:56 2006
+++ src/lib/eet_data.c	Wed Feb 22 11:49:20 2006
@@ -364,7 +364,7 @@
    prev_locale = setlocale(LC_NUMERIC, "C");
 /* solaris atof is broken and doesnt understand %a format as a float */   
 /*   *d = (float)atof(str); */
-   sscanf(str, "%a", &tf);
+   trio_sscanf(str, "%a", &tf);
    *d = (float)tf;
    if (prev_locale) setlocale(LC_NUMERIC, prev_locale);
    
@@ -374,13 +374,13 @@
 static void *
 eet_data_put_float(void *src, int *size_ret)
 {
-   float *s;
+   double *s;
    char *d, buf[64], *prev_locale;
    int len;
 
-   s = (float *)src;
+   s = (double *)src;
    prev_locale = setlocale(LC_NUMERIC, "C");
-   snprintf(buf, sizeof(buf), "%a", (double)(*s));
+   trio_snprintf(buf, sizeof(buf), "%a", (*s));
    if (prev_locale) setlocale(LC_NUMERIC, prev_locale);
    len = strlen(buf);
    d = malloc(len + 1);
@@ -395,7 +395,7 @@
 eet_data_get_double(void *src, void *src_end, void *dst)
 {
    double *d;
-   float tf;
+   double tf;
    char *s, *str, *p, *prev_locale;
    int len;
 
@@ -411,8 +411,8 @@
    prev_locale = setlocale(LC_NUMERIC, "C");
 /* solaris atof is broken and doesnt understand %a format as a float */   
 /*   *d = (double)atof(str); */
-   sscanf(str, "%a", &tf);
-   *d = (double)tf;
+   trio_sscanf(str, "%a", &tf);
+   *d = tf;
    if (prev_locale) setlocale(LC_NUMERIC, prev_locale);
 
    return len + 1;
@@ -427,7 +427,7 @@
 
    s = (double *)src;
    prev_locale = setlocale(LC_NUMERIC, "C");
-   snprintf(buf, sizeof(buf), "%a", (double)(*s));
+   trio_snprintf(buf, sizeof(buf), "%a", (*s));
    if (prev_locale) setlocale(LC_NUMERIC, prev_locale);
    len = strlen(buf);
    d = malloc(len + 1);
