diff --git a/src/OpenFOAM/db/IOstreams/Sstreams/ISstream.C b/src/OpenFOAM/db/IOstreams/Sstreams/ISstream.C index 2a786c111dd5c5136ceda60e86c914903faa6e2e..aa16d17ad8dffe911b6367ad1ae6488f478eb46f 100644 --- a/src/OpenFOAM/db/IOstreams/Sstreams/ISstream.C +++ b/src/OpenFOAM/db/IOstreams/Sstreams/ISstream.C @@ -252,7 +252,7 @@ Foam::Istream& Foam::ISstream::read(token& t) } else { - char *endptr; + char *endptr = NULL; if (asLabel) { @@ -260,7 +260,7 @@ Foam::Istream& Foam::ISstream::read(token& t) t = label(longVal); // return as a scalar if doesn't fit in a label - if (t.labelToken() != longVal) + if (*endptr || t.labelToken() != longVal) { t = scalar(strtod(buf, &endptr)); }