mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
moved and fixed suspicious test in ISstream::read(word&)
This commit is contained in:
@ -42,7 +42,7 @@ char Foam::ISstream::nextValid()
|
|||||||
while (get(c) && isspace(c))
|
while (get(c) && isspace(c))
|
||||||
{}
|
{}
|
||||||
|
|
||||||
// Return if stream is bad
|
// Return if stream is bad - ie, previous get() failed
|
||||||
if (bad() || isspace(c))
|
if (bad() || isspace(c))
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
@ -335,17 +335,6 @@ Foam::Istream& Foam::ISstream::read(word& str)
|
|||||||
|
|
||||||
while (get(c) && word::valid(c))
|
while (get(c) && word::valid(c))
|
||||||
{
|
{
|
||||||
if (fail())
|
|
||||||
{
|
|
||||||
buf[errLen] = buf[nChar] = '\0';
|
|
||||||
|
|
||||||
FatalIOErrorIn("ISstream::read(word&)", *this)
|
|
||||||
<< "problem while reading word '" << buf << "'\n"
|
|
||||||
<< exit(FatalIOError);
|
|
||||||
|
|
||||||
return *this;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (c == token::BEGIN_LIST)
|
if (c == token::BEGIN_LIST)
|
||||||
{
|
{
|
||||||
listDepth++;
|
listDepth++;
|
||||||
@ -376,6 +365,19 @@ Foam::Istream& Foam::ISstream::read(word& str)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// we could probably skip this check
|
||||||
|
if (bad())
|
||||||
|
{
|
||||||
|
buf[errLen] = buf[nChar] = '\0';
|
||||||
|
|
||||||
|
FatalIOErrorIn("ISstream::read(word&)", *this)
|
||||||
|
<< "problem while reading word '" << buf << "...' after "
|
||||||
|
<< nChar << " characters\n"
|
||||||
|
<< exit(FatalIOError);
|
||||||
|
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
|
||||||
if (nChar == 0)
|
if (nChar == 0)
|
||||||
{
|
{
|
||||||
FatalIOErrorIn("ISstream::read(word&)", *this)
|
FatalIOErrorIn("ISstream::read(word&)", *this)
|
||||||
@ -413,7 +415,7 @@ Foam::Istream& Foam::ISstream::read(string& str)
|
|||||||
if (c != token::BEGIN_STRING)
|
if (c != token::BEGIN_STRING)
|
||||||
{
|
{
|
||||||
FatalIOErrorIn("ISstream::read(string&)", *this)
|
FatalIOErrorIn("ISstream::read(string&)", *this)
|
||||||
<< "Incorrect start of string character"
|
<< "Incorrect start of string character found : " << c
|
||||||
<< exit(FatalIOError);
|
<< exit(FatalIOError);
|
||||||
|
|
||||||
return *this;
|
return *this;
|
||||||
|
|||||||
Reference in New Issue
Block a user