diff options
Diffstat (limited to 'lib/Utils/DebugDump.cpp')
-rw-r--r-- | lib/Utils/DebugDump.cpp | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/lib/Utils/DebugDump.cpp b/lib/Utils/DebugDump.cpp index 9fd887f..e0f88c4 100644 --- a/lib/Utils/DebugDump.cpp +++ b/lib/Utils/DebugDump.cpp @@ -32,6 +32,7 @@ #include <fcntl.h> #include <sys/procfs.h> #include <ctype.h> +#include <time.h> CDebugDump::CDebugDump() : m_sDebugDumpDir("") @@ -75,8 +76,16 @@ void CDebugDump::Create(const std::string& pDir) throw "CDebugDump::Create(): Cannot create dir: " + pDir; } SaveEnvironment(); + SaveTime(); } +void CDebugDump::Create(const std::string& pDir, const std::string& pPID) +{ + Create(pDir); + SaveProc(pPID); +} + + void CDebugDump::Delete(const std::string& pDir) { if (!ExistFileDir(pDir)) @@ -122,6 +131,18 @@ void CDebugDump::SaveEnvironment() } } +void CDebugDump::SaveTime() +{ + std::stringstream ss; + time_t t = time(NULL); + if (((time_t) -1) == t) + { + throw std::string("CDebugDump::SaveTime(): Cannot get local time."); + } + ss << t; + SaveText(FILENAME_TIME, ss.str()); +} + void CDebugDump::LoadTextFile(const std::string& pPath, std::string& pData) { std::ifstream fIn; @@ -236,10 +257,11 @@ void CDebugDump::SaveProc(const std::string& pPID) while (!packages.SearchFile(executable)) {} while (!packages.GetStatus()) {} std::string package = packages.GetSearchFileReply(); + SaveText(FILENAME_PACKAGE, package); path = "/proc/"+pPID+"/status"; - std::string uid = "0"; + std::string uid = ""; int ii = 0; LoadTextFile(path, data); |