summaryrefslogtreecommitdiff
path: root/src/mbgl/platform
diff options
context:
space:
mode:
authorKonstantin Käfer <mail@kkaefer.com>2015-04-07 18:04:23 +0200
committerKonstantin Käfer <mail@kkaefer.com>2015-04-07 18:04:23 +0200
commit7d58a41de5dbf1b24b8bad9a2a98c21a7bf75382 (patch)
tree1a5c75d39d6772346dbceb33129dfb5650d65ef6 /src/mbgl/platform
parentd424c09f038fdcd0a070e3d04684dc1511cd1732 (diff)
downloadqtlocation-mapboxgl-7d58a41de5dbf1b24b8bad9a2a98c21a7bf75382.tar.gz
make sqlite storage more resilient to sporadic errors
- catch SQLite exceptions and report them - failed statements are ignored, we're really just caching here, so if it fails we're handling it gracefully elsewhere - handle cases where the database file goes away after we opened it - handle cases where the schema wasn't created after the database file was opened successfully - add tests
Diffstat (limited to 'src/mbgl/platform')
-rw-r--r--src/mbgl/platform/log.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/mbgl/platform/log.cpp b/src/mbgl/platform/log.cpp
index d6cbc4fd11..2a761c6260 100644
--- a/src/mbgl/platform/log.cpp
+++ b/src/mbgl/platform/log.cpp
@@ -17,6 +17,12 @@ void Log::setObserver(std::unique_ptr<Observer> observer) {
currentObserver = std::move(observer);
}
+std::unique_ptr<Log::Observer> Log::removeObserver() {
+ std::unique_ptr<Observer> observer;
+ std::swap(observer, currentObserver);
+ return observer;
+}
+
void Log::record(EventSeverity severity, Event event, const std::string &msg) {
record(severity, event, -1, msg);
}