diff options
author | Konstantin Käfer <mail@kkaefer.com> | 2014-08-05 11:56:28 +0200 |
---|---|---|
committer | Konstantin Käfer <mail@kkaefer.com> | 2014-08-05 11:56:28 +0200 |
commit | 17617a54bdcd2c51f7b28cbde18655a2e62f63e3 (patch) | |
tree | 10360794fdbf4cefdd1f5bea56fd2a2c068eb316 /src/map/sprite.cpp | |
parent | cdd79915050654e60905b789bba937d34f945cb7 (diff) | |
download | qtlocation-mapboxgl-17617a54bdcd2c51f7b28cbde18655a2e62f63e3.tar.gz |
make sure to check the promise
Diffstat (limited to 'src/map/sprite.cpp')
-rw-r--r-- | src/map/sprite.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/map/sprite.cpp b/src/map/sprite.cpp index 1cbc220ac4..68453de52b 100644 --- a/src/map/sprite.cpp +++ b/src/map/sprite.cpp @@ -67,7 +67,9 @@ void Sprite::load() { sprite->complete(); } else { Log::Warning(Event::Sprite, "Failed to load sprite info: Error %d: %s", res->code, res->error_message.c_str()); - sprite->promise.set_exception(std::make_exception_ptr(std::runtime_error(res->error_message))); + if (!sprite->future.valid()) { + sprite->promise.set_exception(std::make_exception_ptr(std::runtime_error(res->error_message))); + } } }); @@ -78,7 +80,9 @@ void Sprite::load() { sprite->complete(); } else { Log::Warning(Event::Sprite, "Failed to load sprite image: Error %d: %s", res->code, res->error_message.c_str()); - sprite->promise.set_exception(std::make_exception_ptr(std::runtime_error(res->error_message))); + if (!sprite->future.valid()) { + sprite->promise.set_exception(std::make_exception_ptr(std::runtime_error(res->error_message))); + } } }); } |