Fix corner case marshalling of doubles - errno was not being correctly set before calling strtod - patch from Justin Vallon

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12190 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
William S Fulton 2010-08-17 19:10:14 +00:00
commit 8f8804b7a1
2 changed files with 5 additions and 0 deletions

View file

@ -311,6 +311,7 @@ SWIG_AsVal_dec(double)(SV *obj, double *val)
const char *nptr = SvPV_nolen(obj);
if (nptr) {
char *endptr;
errno = 0;
double v = strtod(nptr, &endptr);
if (errno == ERANGE) {
errno = 0;