#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
+#include <locale.h>
struct _Ecore_Config_DB_File
{
if (data)
{
int l;
+ char *prev_locale;
if (size <= 2)
{
free(data);
return 0;
}
+
+ prev_locale = setlocale(LC_NUMERIC, "C");
*dest = atoi(data + l + 1);
+ if (prev_locale) setlocale(LC_NUMERIC, prev_locale);
free(data);
}
return 0;
if (data)
{
int l;
+ char *prev_locale;
if (size <= 2)
{
free(data);
return 0;
}
+
+ prev_locale = setlocale(LC_NUMERIC, "C");
*dest = atof(data + l + 1);
+ if (prev_locale) setlocale(LC_NUMERIC, prev_locale);
free(data);
}
return 0;
{
char buf[256];
int num;
+ char *prev_locale;
+ prev_locale = setlocale(LC_NUMERIC, "C");
num = snprintf(buf, sizeof(buf), "%s %i ", "int", val);
+ if (prev_locale) setlocale(LC_NUMERIC, prev_locale);
buf[3] = 0;
buf[num - 1] = 0;
eet_write(db->ef, key, buf, num, 1);
{
char buf[256];
int num;
+ char *prev_locale;
- num = snprintf(buf, sizeof(buf), "%s %f ", "float", val);
+ prev_locale = setlocale(LC_NUMERIC, "C");
+ num = snprintf(buf, sizeof(buf), "%s %16.16f ", "float", val);
+ if (prev_locale) setlocale(LC_NUMERIC, prev_locale);
+ printf("WRITE \"%s\"\n", buf);
buf[5] = 0;
buf[num - 1] = 0;
+ printf("--P2 \"%s\"\n", buf + 6);
eet_write(db->ef, key, buf, num, 1);
}
for (x = 0; x < key_count; x++)
{
type = _ecore_config_db_key_type_get(db, keys[x]);
- printf("%s == %s\n", keys[x], type);
+ printf("\"%s\" == \"%s\"\n", keys[x], type);
if (!type) type = "?";
if (!strcmp(type, "int"))
{