summaryrefslogtreecommitdiff
path: root/platform/default/online_file_source.cpp
diff options
context:
space:
mode:
authorJohn Firebaugh <john.firebaugh@gmail.com>2016-01-07 21:06:44 -0800
committerJohn Firebaugh <john.firebaugh@gmail.com>2016-01-08 12:23:48 -0800
commitadf3dea4e58f0fcd59899937ed050e7174aebd42 (patch)
tree547a39e4dfe9f1459f589bfd6ce76fa77d7febd3 /platform/default/online_file_source.cpp
parent4b7db28157052c6a402114a5796da809105886be (diff)
downloadqtlocation-mapboxgl-adf3dea4e58f0fcd59899937ed050e7174aebd42.tar.gz
[core] Simplify OnlineFileSource's Timer use
There is no need for the timer to be created only under certain conditions. Stopping a non-started timer is a no-op. Therefore it can simply be a direct member. While here, rename the variable. It's a timer, not a request.
Diffstat (limited to 'platform/default/online_file_source.cpp')
-rw-r--r--platform/default/online_file_source.cpp16
1 files changed, 5 insertions, 11 deletions
diff --git a/platform/default/online_file_source.cpp b/platform/default/online_file_source.cpp
index 120f21230c..4d9a13bd83 100644
--- a/platform/default/online_file_source.cpp
+++ b/platform/default/online_file_source.cpp
@@ -50,7 +50,7 @@ public:
const Resource resource;
std::unique_ptr<WorkRequest> cacheRequest;
RequestBase* realRequest = nullptr;
- std::unique_ptr<util::Timer> timerRequest;
+ util::Timer realRequestTimer;
inline OnlineFileRequestImpl(const Resource& resource_)
: resource(resource_) {}
@@ -268,10 +268,8 @@ void OnlineFileSource::Impl::startCacheRequest(OnlineFileRequestImpl& request) {
void OnlineFileSource::Impl::startRealRequest(OnlineFileRequestImpl& request) {
assert(!request.realRequest);
- // Cancel the timer if we have one.
- if (request.timerRequest) {
- request.timerRequest->stop();
- }
+ // Ensure the timer is stopped.
+ request.realRequestTimer.stop();
auto callback = [this, &request](std::shared_ptr<const Response> response) {
request.realRequest = nullptr;
@@ -332,11 +330,7 @@ void OnlineFileSource::Impl::reschedule(OnlineFileRequestImpl& request) {
if (timeout == Seconds::zero()) {
update(request);
} else if (timeout > Seconds::zero()) {
- if (!request.timerRequest) {
- request.timerRequest = std::make_unique<util::Timer>();
- }
-
- request.timerRequest->start(timeout, Duration::zero(), [this, &request] {
+ request.realRequestTimer.start(timeout, Duration::zero(), [this, &request] {
assert(!request.realRequest);
startRealRequest(request);
});
@@ -350,7 +344,7 @@ OnlineFileRequestImpl::~OnlineFileRequestImpl() {
realRequest->cancel();
realRequest = nullptr;
}
- // timerRequest and cacheRequest are automatically canceld upon destruction.
+ // realRequestTimer and cacheRequest are automatically canceled upon destruction.
}
void OnlineFileRequestImpl::addObserver(FileRequest* req, Callback callback) {