diff --git a/Framework/ICat/src/ICat3/ICat3Helper.cpp b/Framework/ICat/src/ICat3/ICat3Helper.cpp index 759ee33f05cf75c336dfd267865d20a055d12904..1213f6fdf2c0730d41d7c861684cdc0fe1265244 100644 --- a/Framework/ICat/src/ICat3/ICat3Helper.cpp +++ b/Framework/ICat/src/ICat3/ICat3Helper.cpp @@ -190,16 +190,16 @@ void CICatHelper::saveInvestigationIncludesResponse( savetoTableWorkspace((*datafile_citr)->location, t); // File creation Time. - std::unique_ptr<std::string> creationtime = nullptr; - if ((*datafile_citr)->datafileCreateTime != nullptr) { - time_t crtime = *(*datafile_citr)->datafileCreateTime; - char temp[25]; - strftime(temp, 25, "%Y-%b-%d %H:%M:%S", localtime(&crtime)); - std::string ftime(temp); - creationtime = std::make_unique<std::string>(); - creationtime->assign(ftime); + if ((*datafile_citr)->datafileCreateTime) { + const static std::string format("%Y-%b-%d %H:%M:%S"); + std::string creationTime; + creationTime.resize(format.size()); + const time_t crtime = *(*datafile_citr)->datafileCreateTime; + strftime(const_cast<char *>(creationTime.data()), creationTime.size(),format.data(), + localtime(&crtime)); + savetoTableWorkspace(creationTime.data(), t); } - savetoTableWorkspace(creationtime.get(), t); + // savetoTableWorkspace((*datafile_citr)->id, t);