From c7dfbec96ec54fc6b99c03a6e4752bf7962e1f07 Mon Sep 17 00:00:00 2001 From: Bruno de Oliveira Abinader Date: Tue, 25 Aug 2015 11:18:27 -0700 Subject: [PATCH] Make Bucket::uploaded an atomic bool This class is called from multiple threads, so we better make this synchronization flag atomic. --- src/mbgl/renderer/bucket.hpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/mbgl/renderer/bucket.hpp b/src/mbgl/renderer/bucket.hpp index 4bdb766a7..6185a5c9b 100644 --- a/src/mbgl/renderer/bucket.hpp +++ b/src/mbgl/renderer/bucket.hpp @@ -5,6 +5,8 @@ #include #include +#include + #define BUFFER_OFFSET(i) ((char*)nullptr + (i)) namespace mbgl { @@ -15,6 +17,8 @@ class TileID; class Bucket : private util::noncopyable { public: + Bucket() : uploaded(false) {} + // As long as this bucket has a Prepare render pass, this function is getting called. Typically, // this only happens once when the bucket is being rendered for the first time. virtual void upload() = 0; @@ -33,7 +37,7 @@ public: virtual void swapRenderData() {} protected: - bool uploaded = false; + std::atomic uploaded; };