Browse Source

Merge #9798: Fix Issue #9775 (Check returned value of fopen)

40f11f8 Fix for issue #9775. Added check for open() returning a NULL pointer. (kirit93)
0.15
Wladimir J. van der Laan 8 years ago
parent
commit
8ad31f9aa3
No known key found for this signature in database
GPG Key ID: 74810B012346C9A6
  1. 15
      src/util.cpp

15
src/util.cpp

@ -214,12 +214,13 @@ void OpenDebugLog()
assert(vMsgsBeforeOpenLog); assert(vMsgsBeforeOpenLog);
boost::filesystem::path pathDebug = GetDataDir() / "debug.log"; boost::filesystem::path pathDebug = GetDataDir() / "debug.log";
fileout = fopen(pathDebug.string().c_str(), "a"); fileout = fopen(pathDebug.string().c_str(), "a");
if (fileout) setbuf(fileout, NULL); // unbuffered if (fileout) {
setbuf(fileout, NULL); // unbuffered
// dump buffered messages from before we opened the log // dump buffered messages from before we opened the log
while (!vMsgsBeforeOpenLog->empty()) { while (!vMsgsBeforeOpenLog->empty()) {
FileWriteStr(vMsgsBeforeOpenLog->front(), fileout); FileWriteStr(vMsgsBeforeOpenLog->front(), fileout);
vMsgsBeforeOpenLog->pop_front(); vMsgsBeforeOpenLog->pop_front();
}
} }
delete vMsgsBeforeOpenLog; delete vMsgsBeforeOpenLog;
@ -838,4 +839,4 @@ std::string CopyrightHolders(const std::string& strPrefix)
strCopyrightHolders += "\n" + strPrefix + "The Bitcoin Core developers"; strCopyrightHolders += "\n" + strPrefix + "The Bitcoin Core developers";
} }
return strCopyrightHolders; return strCopyrightHolders;
} }
Loading…
Cancel
Save