Hi Robert,

Please, remember that the problem is atof, not atoi, because of the
decimal separator :)

On this URL there is an strtod implementation that doesn't handle
locales, may be usefull:
http://www.jbox.dk/sanos/source/lib/strtod.c.html

> Hi Ruben,
> 
> I tried your modified Field,Field.cpp but get a crash due to a
> allocation of vector with a negative number - the cause being the
> incorrect reading of values.  To investigate I added a debug message
> to the Filed::getInt(..) and go this result before the crash:
> 
> fieldCache = 26 i=26
> _fieldCache = 31 i=-1424308159
> _fieldCache = 4 i=-1424308159
> _fieldCache = 1 i=0
> _fieldCache = 0 i=-1383170280
> _fieldCache = 20 i=32767
> _fieldCache = 0 i=0
> _fieldCache = 1 i=0
> _fieldCache = 0 i=10922
> _fieldCache = 3 i=-1394329984
> terminate called after throwing an instance of 'std::length_error'
>   what():  vector::reserve
> 
> So it looks like the cached istringstream is not managing the
> convert.str(_fieldCache) correctly.
> 
> Perhaps it would be easiest just to write out our atoi function...
> 
> Robert.
> _______________________________________________
> osg-users mailing list
> [email protected]
> http://openscenegraph.net/mailman/listinfo/osg-users
> http://www.openscenegraph.org/
> 
_______________________________________________
osg-users mailing list
[email protected]
http://openscenegraph.net/mailman/listinfo/osg-users
http://www.openscenegraph.org/

Reply via email to