diff --git a/src/common/kiwix/manager.cpp b/src/common/kiwix/manager.cpp index 8919ab056..8397616b1 100644 --- a/src/common/kiwix/manager.cpp +++ b/src/common/kiwix/manager.cpp @@ -236,12 +236,7 @@ namespace kiwix { mediaCountStream << reader.getMediaCount(); book.mediaCount = mediaCountStream.str(); - struct stat filestatus; - stat( path.c_str(), &filestatus ); - unsigned int size = filestatus.st_size / 1024; - char csize[42]; - sprintf (csize, "%u", size); - book.size = csize; + book.size = getFileSizeAsString(path); string favicon; string faviconMimeType; diff --git a/src/common/kiwix/manager.h b/src/common/kiwix/manager.h index 17cbded75..7e05129ec 100644 --- a/src/common/kiwix/manager.h +++ b/src/common/kiwix/manager.h @@ -23,10 +23,6 @@ #include #include #include -#include -#include -#include -#include #include diff --git a/src/common/pathTools.cpp b/src/common/pathTools.cpp index 5c6918bcf..aeee85e4e 100644 --- a/src/common/pathTools.cpp +++ b/src/common/pathTools.cpp @@ -71,3 +71,14 @@ string removeLastPathElement(const string path, const bool removePreSeparator, c return newPath; } +unsigned int getFileSize(const string &path) { + struct stat filestatus; + stat(path.c_str(), &filestatus); + return filestatus.st_size / 1024; +} + +string getFileSizeAsString(const string &path) { + char csize[42]; + sprintf(csize, "%u", getFileSize(path)); + return csize; +} diff --git a/src/common/pathTools.h b/src/common/pathTools.h index 2345a708d..68c4c7bb6 100644 --- a/src/common/pathTools.h +++ b/src/common/pathTools.h @@ -22,6 +22,10 @@ #include #include +#include +#include +#include +#include using namespace std; @@ -29,5 +33,7 @@ bool isRelativePath(const string &path); string computeAbsolutePath(const string libraryPath, const string relativePath); string removeLastPathElement(const string path, const bool removePreSeparator = false, const bool removePostSeparator = false); +unsigned int getFileSize(const string &path); +string getFileSizeAsString(const string &path); #endif