/// <summary> /// Finalizes report files. /// Thread-safe. /// </summary> private void FinalizeReport(bool bAdded, DirectoryInfo DirInfo, FGenericCrashContext NewContext) { // Only remove if we added the report, otherwise leave all files to further investigation. if (bAdded) { // Remove the report files as we're done with them. CleanReport(DirInfo); } else { MoveReportToInvalid(NewContext.CrashDirectory, ReportQueueBase.GetSafeFilename(NewContext.GetAsFilename())); } }
/// <summary> /// Finalizes report files. /// Thread-safe. /// </summary> private void FinalizeReport(AddReportResult AddResult, DirectoryInfo DirInfo, FGenericCrashContext NewContext) { // Only remove if we added the report, otherwise leave all files to further investigation. if (AddResult == AddReportResult.Added) { // Remove the report files as we're done with them. CleanReport(DirInfo); } else if (AddResult == AddReportResult.Failed) { MoveReportToInvalid(NewContext.CrashDirectory, ReportQueueBase.GetSafeFilename(NewContext.GetAsFilename())); } else // AddResult == AddReportResult.Cancelled { // Remove report from index of completed reports and leave on disk CrashReporterProcessServicer.ReportIndex.TryRemoveReport(NewContext.CrashDirectory); } }