diff options
-rw-r--r-- | include/mbgl/util/logging.hpp | 4 | ||||
-rw-r--r-- | src/mbgl/util/logging.cpp | 10 |
2 files changed, 10 insertions, 4 deletions
diff --git a/include/mbgl/util/logging.hpp b/include/mbgl/util/logging.hpp index d072673e76..03db2d7462 100644 --- a/include/mbgl/util/logging.hpp +++ b/include/mbgl/util/logging.hpp @@ -67,8 +67,8 @@ public: private: static void record(EventSeverity severity, Event event, const std::string &msg); - static void record(EventSeverity severity, Event event, const char* format, ...); - static void record(EventSeverity severity, Event event, int64_t code); + static void record(EventSeverity severity, Event event, const char* format = "", ...); + static void record(EventSeverity severity, Event event, int64_t code, const char* format = "", ...); static void record(EventSeverity severity, Event event, int64_t code, const std::string &msg); // This method is the data sink that must be implemented by each platform we diff --git a/src/mbgl/util/logging.cpp b/src/mbgl/util/logging.cpp index 0552eb36cb..d322bd3670 100644 --- a/src/mbgl/util/logging.cpp +++ b/src/mbgl/util/logging.cpp @@ -38,8 +38,14 @@ void Log::record(EventSeverity severity, Event event, const char* format, ...) { record(severity, event, -1, msg); } -void Log::record(EventSeverity severity, Event event, int64_t code) { - record(severity, event, code, std::string()); +void Log::record(EventSeverity severity, Event event, int64_t code, const char* format, ...) { + va_list args; + va_start(args, format); + char msg[4096]; + vsnprintf(msg, sizeof(msg), format, args); + va_end(args); + + record(severity, event, code, std::string{ msg }); } void Log::record(EventSeverity severity, Event event, int64_t code, const std::string &msg) { |