X-Git-Url: https://main.carlh.net/gitweb/?p=dcpomatic.git;a=blobdiff_plain;f=src%2Flib%2Flog_entry.cc;h=01d1415c701fbe4d218c1abb54a5e097b6bd5c66;hp=d29b56747306f0b9a23aff6e3b49c0f678c9d659;hb=6ef1fc5f40567650ca9ef2b7644e4fdd97640ae6;hpb=bb9d1f9e0f1aa818d1ac2145f05563e4c95d41b1 diff --git a/src/lib/log_entry.cc b/src/lib/log_entry.cc index d29b56747..01d1415c7 100644 --- a/src/lib/log_entry.cc +++ b/src/lib/log_entry.cc @@ -1,34 +1,38 @@ /* Copyright (C) 2015 Carl Hetherington - This program is free software; you can redistribute it and/or modify + This file is part of DCP-o-matic. + + DCP-o-matic is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. - This program is distributed in the hope that it will be useful, + DCP-o-matic is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + along with DCP-o-matic. If not, see . */ #include "log_entry.h" -#include "safe_stringstream.h" +#include +#include #include "i18n.h" -int const LogEntry::TYPE_GENERAL = 0x1; -int const LogEntry::TYPE_WARNING = 0x2; -int const LogEntry::TYPE_ERROR = 0x4; -int const LogEntry::TYPE_DEBUG_DECODE = 0x8; -int const LogEntry::TYPE_DEBUG_ENCODE = 0x10; -int const LogEntry::TYPE_TIMING = 0x20; -int const LogEntry::TYPE_DEBUG_EMAIL = 0x40; +int const LogEntry::TYPE_GENERAL = 0x001; +int const LogEntry::TYPE_WARNING = 0x002; +int const LogEntry::TYPE_ERROR = 0x004; +int const LogEntry::TYPE_DEBUG_THREED = 0x008; +int const LogEntry::TYPE_DEBUG_ENCODE = 0x010; +int const LogEntry::TYPE_TIMING = 0x020; +int const LogEntry::TYPE_DEBUG_EMAIL = 0x040; +int const LogEntry::TYPE_DEBUG_VIDEO_VIEW = 0x080; +int const LogEntry::TYPE_DISK = 0x100; using std::string; @@ -41,28 +45,30 @@ LogEntry::LogEntry (int type) string LogEntry::get () const { - SafeStringStream s; + string s; if (_type & TYPE_TIMING) { - s << _time.tv_sec << ":" << _time.tv_usec << " "; + char buffer[64]; + snprintf (buffer, sizeof(buffer), "%" PRId64 ":%" PRId64 " ", static_cast (_time.tv_sec), static_cast (_time.tv_usec)); + s += buffer; } else { char buffer[64]; time_t const sec = _time.tv_sec; struct tm* t = localtime (&sec); strftime (buffer, 64, "%c", t); string a (buffer); - s << a.substr (0, a.length() - 1) << N_(": "); + s += string(buffer) + N_(": "); } if (_type & TYPE_ERROR) { - s << "ERROR: "; + s += "ERROR: "; } if (_type & TYPE_WARNING) { - s << "WARNING: "; + s += "WARNING: "; } - s << message (); - return s.str (); + s += message (); + return s; } double