2009-07-22 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>

Rewritten RequestGroupMan::saveServerStat()
	* src/RequestGroupMan.cc
pull/1/head
Tatsuhiro Tsujikawa 2009-07-22 13:09:50 +00:00
parent 1c6a0962a1
commit 8d2b9f0aa1
2 changed files with 22 additions and 13 deletions

View File

@ -13,6 +13,11 @@
Rewritten Signature::save()
* src/Signature.cc
2009-07-22 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten RequestGroupMan::saveServerStat()
* src/RequestGroupMan.cc
2009-07-22 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten stream error handling

View File

@ -763,22 +763,26 @@ bool RequestGroupMan::saveServerStat(const std::string& filename) const
{
std::string tempfile = filename;
tempfile += "__temp";
{
std::ofstream out(tempfile.c_str(), std::ios::binary);
if(!out) {
_logger->error(MSG_OPENING_WRITABLE_SERVER_STAT_FILE_FAILED,
tempfile.c_str());
filename.c_str());
return false;
}
if (_serverStatMan->save(out)) {
out.close();
if(!_serverStatMan->save(out)) {
_logger->error(MSG_WRITING_SERVER_STAT_FILE_FAILED, filename.c_str());
return false;
}
}
if(File(tempfile).renameTo(filename)) {
_logger->notice(MSG_SERVER_STAT_SAVED, filename.c_str());
return true;
}
}
} else {
_logger->error(MSG_WRITING_SERVER_STAT_FILE_FAILED, filename.c_str());
return false;
}
}
void RequestGroupMan::removeStaleServerStat(time_t timeout)
{