Fix writeLogsToFile

Deleted logFile smart pointer and getLogFile function.
logfile created inside of the statics functions.
Debug.cpp can be deleted.
This commit is contained in:
Guido Diego Quispe Robles
2023-11-04 22:35:13 -03:00
parent d2da130771
commit 878adf5dbb
2 changed files with 36 additions and 27 deletions
+24 -15
View File
@@ -48,9 +48,12 @@ class TyraDebug {
(void)expander{0, (void(ss << std::forward<Args>(args)), 0)...}; (void)expander{0, (void(ss << std::forward<Args>(args)), 0)...};
if (Tyra::Info::writeLogsToFile) { if (Tyra::Info::writeLogsToFile) {
auto* logFile = getLogFile(); std::ofstream logFile;
*logFile << ss.str(); logFile.open(Tyra::FileUtils::fromCwd("log.txt"),
logFile->flush(); std::ofstream::out | std::ofstream::app);
logFile << ss.str();
logFile.flush();
// logFile.close();
} else { } else {
printf("%s", ss.str().c_str()); printf("%s", ss.str().c_str());
} }
@@ -65,9 +68,12 @@ class TyraDebug {
ss1 << "|\n"; ss1 << "|\n";
if (Tyra::Info::writeLogsToFile) { if (Tyra::Info::writeLogsToFile) {
auto* logFile = getLogFile(); std::ofstream logFile;
*logFile << ss1.str(); logFile.open(Tyra::FileUtils::fromCwd("log.txt"),
logFile->flush(); std::ofstream::out | std::ofstream::app);
logFile << ss1.str();
logFile.flush();
// logFile.close();
} else { } else {
printf("%s", ss1.str().c_str()); printf("%s", ss1.str().c_str());
} }
@@ -80,9 +86,12 @@ class TyraDebug {
ss2 << "====================================\n\n"; ss2 << "====================================\n\n";
if (Tyra::Info::writeLogsToFile) { if (Tyra::Info::writeLogsToFile) {
auto* logFile = getLogFile(); std::ofstream logFile;
*logFile << ss2.str(); logFile.open(Tyra::FileUtils::fromCwd("log.txt"),
logFile->flush(); std::ofstream::out | std::ofstream::app);
logFile << ss2.str();
logFile.flush();
// logFile.close();
} else { } else {
printf("%s", ss2.str().c_str()); printf("%s", ss2.str().c_str());
} }
@@ -92,9 +101,6 @@ class TyraDebug {
} }
private: private:
static std::unique_ptr<std::ofstream> logFile;
static std::ofstream* getLogFile();
template <typename Arg, typename... Args> template <typename Arg, typename... Args>
static void writeAssertLines(Arg&& arg, Args&&... args) { static void writeAssertLines(Arg&& arg, Args&&... args) {
std::stringstream ss; std::stringstream ss;
@@ -105,9 +111,12 @@ class TyraDebug {
0, (void(ss << "| " << std::forward<Args>(args) << "\n"), 0)...}; 0, (void(ss << "| " << std::forward<Args>(args) << "\n"), 0)...};
if (Tyra::Info::writeLogsToFile) { if (Tyra::Info::writeLogsToFile) {
auto* logfile = getLogFile(); std::ofstream logFile;
*logfile << ss.str(); logFile.open(Tyra::FileUtils::fromCwd("log.txt"),
logFile->flush(); std::ofstream::out | std::ofstream::app);
logFile << ss.str();
logFile.flush();
// logFile.close();
} else { } else {
printf("%s", ss.str().c_str()); printf("%s", ss.str().c_str());
} }
+12 -12
View File
@@ -8,18 +8,18 @@
# Wellington Carvalho <wellcoj@gmail.com> # Wellington Carvalho <wellcoj@gmail.com>
*/ */
#include "debug/debug.hpp" // #include "debug/debug.hpp"
std::unique_ptr<std::ofstream> TyraDebug::logFile; // std::unique_ptr<std::ofstream> TyraDebug::logFile;
std::ofstream* TyraDebug::getLogFile() { // std::ofstream* TyraDebug::getLogFile() {
if (logFile) { // if (logFile) {
return logFile.get(); // return logFile.get();
} else { // } else {
logFile = std::make_unique<std::ofstream>(); // logFile = std::make_unique<std::ofstream>();
logFile->open(Tyra::FileUtils::fromCwd("log.txt"), // logFile->open(Tyra::FileUtils::fromCwd("log.txt"),
std::ofstream::out | std::ofstream::app); // std::ofstream::out | std::ofstream::app);
return logFile.get(); // return logFile.get();
} // }
} // namespace Tyra // } // namespace Tyra