diff options
author | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2006-07-10 22:23:03 +0000 |
---|---|---|
committer | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2006-07-10 22:23:03 +0000 |
commit | b9d5841f8f8660860e2f6d1669056be01960bfd7 (patch) | |
tree | 81de9059c0d32e77a07a83244929ca7528f955ab /src | |
parent | 21ec94afe38878f0efdf1df3ad5a9f724d5cf3e0 (diff) |
ContentSize speedups
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4316 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src')
-rw-r--r-- | src/modules.cpp | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/modules.cpp b/src/modules.cpp index 3ec932980..2297db53b 100644 --- a/src/modules.cpp +++ b/src/modules.cpp @@ -931,6 +931,7 @@ FileReader::FileReader(const std::string &filename) file_cache c; readfile(c,filename.c_str()); this->fc = c; + this->CalcSize(); } FileReader::FileReader() @@ -942,7 +943,7 @@ std::string FileReader::Contents() std::string x = ""; for (file_cache::iterator a = this->fc.begin(); a != this->fc.end(); a++) { - x.append(a->c_str()); + x.append(*a); x.append("\r\n"); } return x; @@ -950,10 +951,15 @@ std::string FileReader::Contents() unsigned long FileReader::ContentSize() { + return this->contentsize; +} + +void FileReader::CalcSize() +{ unsigned long n = 0; for (file_cache::iterator a = this->fc.begin(); a != this->fc.end(); a++) n += (a->length() + 2); - return n; + this->contentsize = n; } void FileReader::LoadFile(const std::string &filename) @@ -961,6 +967,7 @@ void FileReader::LoadFile(const std::string &filename) file_cache c; readfile(c,filename.c_str()); this->fc = c; + this->CalcSize(); } |