Commit 970704ca authored by Mihai Moldovan's avatar Mihai Moldovan

nxcomp/src/Loop.cpp: use new log continuation mechanism.

Especially don't flush data out mid-append. Doing so will lead to the next append operation failing. Should fix messages queuing up indefinitely (until they are discarded at program termination, at least) and missing messages in general. Fixes: ArcticaProject/nx-libs#577 Fixes: ArcticaProject/nx-libs#611
parent fe447bb6
......@@ -13449,12 +13449,12 @@ int ParseArg(const char *type, const char *name, const char *value)
case 'm':
case 'g':
{
nxinfo << (char) toupper(*id);
nxinfo_append << (char) toupper(*id);
break;
}
}
nxinfo << ".\n" << std::flush;
nxinfo_append << ".\n" << std::flush;
double result = atof(string) * base;
......@@ -14028,13 +14028,13 @@ static void handleCheckSelectInLoop(int &setFDs, fd_set &readSet,
{
i = 0;
nxinfo << "Loop: Selected for read are ";
nxinfo << "Loop: Selected for read are";
for (int j = 0; j < setFDs; j++)
{
if (FD_ISSET(j, &readSet))
{
nxinfo << "[" << j << "]" << std::flush;
nxinfo_append << " [" << j << "]";
i++;
}
......@@ -14042,22 +14042,22 @@ static void handleCheckSelectInLoop(int &setFDs, fd_set &readSet,
if (i > 0)
{
nxinfo << ".\n" << std::flush;
nxinfo_append << ".\n" << std::flush;
}
else
{
nxinfo << "[none].\n" << std::flush;
nxinfo_append << "[none].\n" << std::flush;
}
i = 0;
nxinfo << "Loop: Selected for write are ";
nxinfo << "Loop: Selected for write are";
for (int j = 0; j < setFDs; j++)
{
if (FD_ISSET(j, &writeSet))
{
nxinfo << "[" << j << "]" << std::flush;
nxinfo_append << " [" << j << "]";
i++;
}
......@@ -14065,11 +14065,11 @@ static void handleCheckSelectInLoop(int &setFDs, fd_set &readSet,
if (i > 0)
{
nxinfo << ".\n" << std::flush;
nxinfo_append << ".\n" << std::flush;
}
else
{
nxinfo << "[none].\n" << std::flush;
nxinfo_append << "[none].\n" << std::flush;
}
}
......@@ -14109,13 +14109,13 @@ static void handleCheckResultInLoop(int &resultFDs, int &errorFDs, int &setFDs,
{
i = 0;
nxinfo << "Loop: Selected for read are ";
nxinfo << "Loop: Selected for read are";
for (int j = 0; j < setFDs; j++)
{
if (FD_ISSET(j, &readSet))
{
nxinfo << "[" << j << "]" << std::flush;
nxinfo_append << " [" << j << "]";
i++;
}
......@@ -14123,22 +14123,22 @@ static void handleCheckResultInLoop(int &resultFDs, int &errorFDs, int &setFDs,
if (i > 0)
{
nxinfo << ".\n" << std::flush;
nxinfo_append << ".\n" << std::flush;
}
else
{
nxinfo << "[none].\n" << std::flush;
nxinfo_append << "[none].\n" << std::flush;
}
i = 0;
nxinfo << "Loop: Selected for write are ";
nxinfo << "Loop: Selected for write are";
for (int j = 0; j < setFDs; j++)
{
if (FD_ISSET(j, &writeSet))
{
nxinfo << "[" << j << "]" << std::flush;
nxinfo_append << " [" << j << "]";
i++;
}
......@@ -14146,11 +14146,11 @@ static void handleCheckResultInLoop(int &resultFDs, int &errorFDs, int &setFDs,
if (i > 0)
{
nxinfo << ".\n" << std::flush;
nxinfo_append << ".\n" << std::flush;
}
else
{
nxinfo << "[none].\n" << std::flush;
nxinfo_append << "[none].\n" << std::flush;
}
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment