From 1b4b6dbeb46aa7e6b87b3de32cd8953fa0d32a7a Mon Sep 17 00:00:00 2001 From: Eran Mizrahi Date: Sat, 9 Dec 2017 01:56:16 +0200 Subject: cycle crash dumps --- src/organizercore.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'src/organizercore.cpp') diff --git a/src/organizercore.cpp b/src/organizercore.cpp index adb895ec..7f86f2b4 100644 --- a/src/organizercore.cpp +++ b/src/organizercore.cpp @@ -630,7 +630,8 @@ bool OrganizerCore::bootstrap() { return createDirectory(m_Settings.getProfileDirectory()) && createDirectory(m_Settings.getModDirectory()) && createDirectory(m_Settings.getDownloadDirectory()) && - createDirectory(m_Settings.getOverwriteDirectory()); + createDirectory(m_Settings.getOverwriteDirectory()) && + createDirectory(QString::fromStdWString(crashDumpsPath())) && cycleDiagnostics(); } void OrganizerCore::createDefaultProfile() @@ -652,6 +653,12 @@ void OrganizerCore::updateVFSParams(int logLevel, int crashDumpsType) { m_USVFS.updateParams(logLevel, crashDumpsType); } +bool OrganizerCore::cycleDiagnostics() { + if (int maxDumps = settings().crashDumpsMax()) + removeOldFiles(QString::fromStdWString(crashDumpsPath()), "*.dmp", maxDumps, QDir::Time|QDir::Reversed); + return true; +} + //static void OrganizerCore::setGlobalCrashDumpsType(int crashDumpsType) { m_globalCrashDumpsType = ::crashDumpsType(crashDumpsType); @@ -1083,6 +1090,7 @@ void OrganizerCore::spawnBinary(const QFileInfo &binary, const QString &argument refreshESPList(); savePluginList(); + cycleDiagnostics(); //These callbacks should not fiddle with directoy structure and ESPs. m_FinishedRun(binary.absoluteFilePath(), processExitCode); -- cgit v1.3.1