Merge pull request #3603

a486abd replace custom GetFilesize() with boost::filesystem::file_size() (Philip Kaufmann)
This commit is contained in:
Wladimir J. van der Laan 2014-03-27 11:38:26 +01:00
commit ebb783a9f2
No known key found for this signature in database
GPG Key ID: 74810B012346C9A6
3 changed files with 5 additions and 21 deletions

View File

@ -27,6 +27,8 @@
#include <miniupnpc/upnperrors.h>
#endif
#include <boost/filesystem.hpp>
// Dump addresses to peers.dat every 15 minutes (900s)
#define DUMP_ADDRESSES_INTERVAL 900
@ -1986,9 +1988,9 @@ bool CAddrDB::Read(CAddrMan& addr)
return error("CAddrman::Read() : open failed");
// use file size to size memory buffer
int fileSize = GetFilesize(filein);
int fileSize = boost::filesystem::file_size(pathAddr);
int dataSize = fileSize - sizeof(uint256);
//Don't try to resize to a negative number if file is small
// Don't try to resize to a negative number if file is small
if ( dataSize < 0 ) dataSize = 0;
vector<unsigned char> vchData;
vchData.resize(dataSize);

View File

@ -1107,16 +1107,6 @@ void FileCommit(FILE *fileout)
#endif
}
int GetFilesize(FILE* file)
{
int nSavePos = ftell(file);
int nFilesize = -1;
if (fseek(file, 0, SEEK_END) == 0)
nFilesize = ftell(file);
fseek(file, nSavePos, SEEK_SET);
return nFilesize;
}
bool TruncateFile(FILE *file, unsigned int length) {
#if defined(WIN32)
return _chsize(_fileno(file), length) == 0;
@ -1195,7 +1185,7 @@ void ShrinkDebugFile()
// Scroll debug.log if it's getting too big
boost::filesystem::path pathLog = GetDataDir() / "debug.log";
FILE* file = fopen(pathLog.string().c_str(), "r");
if (file && GetFilesize(file) > 10 * 1000000)
if (file && boost::filesystem::file_size(pathLog) > 10 * 1000000)
{
// Restart the file with some of the end
char pch[200000];
@ -1214,13 +1204,6 @@ void ShrinkDebugFile()
fclose(file);
}
//
// "Never go to sea with two chronometers; take one or three."
// Our three time sources are:

View File

@ -185,7 +185,6 @@ void ParseParameters(int argc, const char*const argv[]);
bool WildcardMatch(const char* psz, const char* mask);
bool WildcardMatch(const std::string& str, const std::string& mask);
void FileCommit(FILE *fileout);
int GetFilesize(FILE* file);
bool TruncateFile(FILE *file, unsigned int length);
int RaiseFileDescriptorLimit(int nMinFD);
void AllocateFileRange(FILE *file, unsigned int offset, unsigned int length);