[Bf-blender-cvs] [ed688e48432] master: Cycles: Fix crash when assigning KernelGlobals
Lukas Stockner
noreply at git.blender.org
Thu May 4 20:50:17 CEST 2017
Commit: ed688e484329044cb3744bf0977b84518bb921cb
Author: Lukas Stockner
Date: Thu May 4 20:49:04 2017 +0200
Branches: master
https://developer.blender.org/rBed688e484329044cb3744bf0977b84518bb921cb
Cycles: Fix crash when assigning KernelGlobals
The memory isn't initialized during allocation, so calling the assignment operator is a bad idea.
===================================================================
M intern/cycles/device/device_cpu.cpp
===================================================================
diff --git a/intern/cycles/device/device_cpu.cpp b/intern/cycles/device/device_cpu.cpp
index 3c481bb2b39..84cce605182 100644
--- a/intern/cycles/device/device_cpu.cpp
+++ b/intern/cycles/device/device_cpu.cpp
@@ -446,8 +446,7 @@ public:
kgbuffer.resize(sizeof(KernelGlobals));
mem_alloc("kernel_globals", kgbuffer, MEM_READ_WRITE);
- KernelGlobals *kg = (KernelGlobals*)kgbuffer.device_pointer;
- *kg = thread_kernel_globals_init();
+ KernelGlobals *kg = new ((void*) kgbuffer.device_pointer) KernelGlobals(thread_kernel_globals_init());
requested_features.max_closure = MAX_CLOSURE;
if(!split_kernel.load_kernels(requested_features)) {
More information about the Bf-blender-cvs
mailing list