Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'intern/cycles/render/osl.cpp')
-rw-r--r--intern/cycles/render/osl.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/intern/cycles/render/osl.cpp b/intern/cycles/render/osl.cpp
index 4bc18e53c9b..6f927bd5c42 100644
--- a/intern/cycles/render/osl.cpp
+++ b/intern/cycles/render/osl.cpp
@@ -30,6 +30,7 @@
# include "kernel/osl/osl_services.h"
# include "kernel/osl/osl_shader.h"
+# include "util/util_aligned_malloc.h"
# include "util/util_foreach.h"
# include "util/util_logging.h"
# include "util/util_md5.h"
@@ -224,7 +225,8 @@ void OSLShaderManager::shading_system_init()
thread_scoped_lock lock(ss_shared_mutex);
if (ss_shared_users == 0) {
- services_shared = new OSLRenderServices(ts_shared);
+ /* Must use aligned new due to concurrent hash map. */
+ services_shared = util_aligned_new<OSLRenderServices>(ts_shared);
string shader_path = path_get("shader");
# ifdef _WIN32
@@ -293,7 +295,7 @@ void OSLShaderManager::shading_system_free()
delete ss_shared;
ss_shared = NULL;
- delete services_shared;
+ util_aligned_delete(services_shared);
services_shared = NULL;
}