X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Ffile_log.cc;h=5cc9c556942b4868de44a835ce305f2b0eebab12;hb=c2a17a87868eba87072fc369102b2b3cd8905e5a;hp=b9aa84c3d9ff2aa957f84f01714fb1cbc1def2f9;hpb=a1f7bf2d9e5610075fbd898cdf52f4f8373741f2;p=dcpomatic.git diff --git a/src/lib/file_log.cc b/src/lib/file_log.cc index b9aa84c3d..5cc9c5569 100644 --- a/src/lib/file_log.cc +++ b/src/lib/file_log.cc @@ -1,5 +1,5 @@ /* - Copyright (C) 2012 Carl Hetherington + Copyright (C) 2012-2021 Carl Hetherington This file is part of DCP-o-matic. @@ -18,6 +18,7 @@ */ + #include "file_log.h" #include "cross.h" #include "config.h" @@ -25,10 +26,12 @@ #include #include + using std::cout; using std::string; using std::max; -using boost::shared_ptr; +using std::shared_ptr; + /** @param file Filename to write log to */ FileLog::FileLog (boost::filesystem::path file) @@ -37,25 +40,28 @@ FileLog::FileLog (boost::filesystem::path file) set_types (Config::instance()->log_types()); } + FileLog::FileLog (boost::filesystem::path file, int types) : _file (file) { set_types (types); } + void FileLog::do_log (shared_ptr entry) { - FILE* f = fopen_boost (_file, "a"); + auto f = fopen_boost (_file, "a"); if (!f) { cout << "(could not log to " << _file.string() << " error " << errno << "): " << entry->get() << "\n"; return; } - fprintf (f, "%s\n", entry->get().c_str ()); + fprintf (f, "%s\n", entry->get().c_str()); fclose (f); } + string FileLog::head_and_tail (int amount) const { @@ -70,14 +76,14 @@ FileLog::head_and_tail (int amount) const tail_amount = 0; } - FILE* f = fopen_boost (_file, "r"); + auto f = fopen_boost (_file, "r"); if (!f) { return ""; } string out; - char* buffer = new char[max(head_amount, tail_amount) + 1]; + auto buffer = new char[max(head_amount, tail_amount) + 1]; int N = fread (buffer, 1, head_amount, f); buffer[N] = '\0';