diff --git a/aegisub/libaegisub/common/log.cpp b/aegisub/libaegisub/common/log.cpp index 6a5518049..f7571cc5a 100644 --- a/aegisub/libaegisub/common/log.cpp +++ b/aegisub/libaegisub/common/log.cpp @@ -20,11 +20,11 @@ #include -#include #include #include "libaegisub/log.h" #include "libaegisub/mutex.h" +#include "libaegisub/types.h" #include "libaegisub/util.h" namespace agi { @@ -38,7 +38,7 @@ LogSink *log = new LogSink(); const char *Severity_ID = "EAWID"; SinkMessage::SinkMessage(const char *section, Severity severity, const char *file, - const char *func, int line, timeval tv): + const char *func, int line, agi_timeval tv): section(section), severity(severity), file(file), @@ -109,7 +109,7 @@ Message::Message(const char *section, len(1024) { buf = new char[len]; msg = new std::ostrstream(buf, len); - timeval tv; + agi_timeval tv; util::time_log(tv); sm = new SinkMessage(section, severity, file, func, line, tv); } diff --git a/aegisub/libaegisub/include/libaegisub/log.h b/aegisub/libaegisub/include/libaegisub/log.h index f6f303818..c6eca87ca 100644 --- a/aegisub/libaegisub/include/libaegisub/log.h +++ b/aegisub/libaegisub/include/libaegisub/log.h @@ -78,7 +78,7 @@ struct SinkMessage { /// @param line Source line /// @param tv Log time SinkMessage(const char *section, Severity severity, const char *file, - const char *func, int line, timeval tv); + const char *func, int line, agi_timeval tv); // Destructor ~SinkMessage(); @@ -88,7 +88,7 @@ struct SinkMessage { const char *file; ///< Source file const char *func; ///< Function name int line; ///< Source line - timeval tv; ///< Time at execution + agi_timeval tv; ///< Time at execution char *message; ///< Formatted message size_t len; ///< Message length }; diff --git a/aegisub/libaegisub/include/libaegisub/types.h b/aegisub/libaegisub/include/libaegisub/types.h index b7f7d8283..83bae4f1b 100644 --- a/aegisub/libaegisub/include/libaegisub/types.h +++ b/aegisub/libaegisub/include/libaegisub/types.h @@ -21,6 +21,15 @@ #ifndef LAGI_PRE #endif // LAGI_PRE +#ifdef _WIN32 +#include + +#else // Unix / OSX +#include + +#endif // if _WIN32 + + #pragma once namespace agi { @@ -61,3 +70,14 @@ typedef struct tm { } // namespace type } // namespace agi + + +#ifdef _WIN32 + +typedef agi::type::win::timeval agi_timeval; + +#else // Unix / OSX + +typedef timeval agi_timeval; + +#endif // if _WIN32 diff --git a/aegisub/libaegisub/include/libaegisub/util.h b/aegisub/libaegisub/include/libaegisub/util.h index 0e479df80..36694ab61 100644 --- a/aegisub/libaegisub/include/libaegisub/util.h +++ b/aegisub/libaegisub/include/libaegisub/util.h @@ -32,7 +32,7 @@ namespace agi { const std::string DirName(const std::string& path); void Rename(const std::string& from, const std::string& to); - void time_log(timeval &tv); + void time_log(agi_timeval &tv); } // namespace util } // namespace agi diff --git a/aegisub/libaegisub/windows/util.cpp b/aegisub/libaegisub/windows/util.cpp index ecca7430f..51bc59264 100644 --- a/aegisub/libaegisub/windows/util.cpp +++ b/aegisub/libaegisub/windows/util.cpp @@ -25,13 +25,11 @@ #include #include -#include #include - #endif #include "libaegisub/types.h" -#include +#include "libaegisub/charset_conv_win.h" #include "libaegisub/util.h" #include "libaegisub/util_win.h" @@ -74,9 +72,9 @@ std::string ErrorString(DWORD error) { } /// @brief Get seconds and microseconds. -/// @param tv[out] timeval struct +/// @param tv[out] agi_timeval struct /// This code is from http://www.suacommunity.com/dictionary/gettimeofday-entry.php -void time_log(type::win::timeval &tv) { +void time_log(agi_timeval &tv) { #if defined(_MSC_VER) || defined(_MSC_EXTENSIONS) #define DELTA_EPOCH_IN_MICROSECS 11644473600000000Ui64 #else