From 6af6acf7c6ea78caa1a47bbd0a99f5f838909c3c Mon Sep 17 00:00:00 2001 From: Helge Norberg Date: Wed, 25 Nov 2015 20:38:08 +0100 Subject: [PATCH] Fixed race-condition where texture could be destructed on non-GL thread. --- accelerator/ogl/util/device.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/accelerator/ogl/util/device.cpp b/accelerator/ogl/util/device.cpp index 1e41ceb7a..e71ca3404 100644 --- a/accelerator/ogl/util/device.cpp +++ b/accelerator/ogl/util/device.cpp @@ -266,7 +266,11 @@ struct device::impl : public std::enable_shared_from_this if (strong) { - strong->texture_cache_.erase(buf.get()); + strong->executor_.invoke([&] + { + strong->texture_cache_.erase(buf.get()); + }, task_priority::high_priority); + pool->push(buf); } else -- 2.39.2