diff options
Diffstat (limited to 'src/mbgl/platform')
-rw-r--r-- | src/mbgl/platform/log.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/mbgl/platform/log.cpp b/src/mbgl/platform/log.cpp index 4bbff8da5d..e9712f727c 100644 --- a/src/mbgl/platform/log.cpp +++ b/src/mbgl/platform/log.cpp @@ -4,6 +4,16 @@ namespace mbgl { +namespace { + +static std::unique_ptr<Log::Observer> currentObserver; + +} + +void Log::setObserver(std::unique_ptr<Observer> observer) { + currentObserver = std::move(observer); +} + void Log::record(EventSeverity severity, Event event, const std::string &msg) { record(severity, event, -1, msg); } @@ -23,6 +33,10 @@ void Log::record(EventSeverity severity, Event event, int64_t code) { } void Log::record(EventSeverity severity, Event event, int64_t code, const std::string &msg) { + if (currentObserver && currentObserver->onRecord(severity, event, code, msg)) { + return; + } + platformRecord(severity, event, code, msg); } |