I found that SetDoubleAttribute, DoubleValue and Attribute (char*, double*) behave odd in gtk aplications. I mean double value writen to file have coma instead of dot. I checked it, and founded that it is fault of standart sprintf(%f), atof... functions which use local's settings. So I have proposition to use std::istringstream and ostringstream instead, of course when you use TIXML_USE_STL.
For example.
I found that SetDoubleAttribute, DoubleValue and Attribute (char*, double*) behave odd in gtk aplications. I mean double value writen to file have coma instead of dot. I checked it, and founded that it is fault of standart sprintf(%f), atof... functions which use local's settings. So I have proposition to use std::istringstream and ostringstream instead, of course when you use TIXML_USE_STL.
For example.
double TiXmlAttribute::DoubleValue() const
{
#ifdef TIXML_USE_STL
std::istringstream is(value.c_str());
double d=0; is >> d;
return d;
#else
return atof (value.c_str ());
#endif
}