diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2018-06-25 18:01:24 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2018-06-25 18:28:46 +0300 |
commit | 7cd86cd1feedefcc3d62b85bc3a6909f4d6b492e (patch) | |
tree | 262bb521454b2bd30721161e787508381608e0fe /intern | |
parent | c2110213ca7a6b8ba2392cf6e8f5a61b7ba4b554 (diff) |
Cycles: Fix memory leak with session
We didn't check for sync object being already allocated.
In fact, we simply need to use proper function to free
session.
Diffstat (limited to 'intern')
-rw-r--r-- | intern/cycles/blender/blender_session.cpp | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/intern/cycles/blender/blender_session.cpp b/intern/cycles/blender/blender_session.cpp index 6e9964e8bc3..cd55155e33b 100644 --- a/intern/cycles/blender/blender_session.cpp +++ b/intern/cycles/blender/blender_session.cpp @@ -54,6 +54,7 @@ BlenderSession::BlenderSession(BL::RenderEngine& b_engine, BL::BlendData& b_data, bool preview_osl) : session(NULL), + sync(NULL), b_engine(b_engine), b_userpref(b_userpref), b_data(b_data), @@ -81,6 +82,7 @@ BlenderSession::BlenderSession(BL::RenderEngine& b_engine, BL::RegionView3D& b_rv3d, int width, int height) : session(NULL), + sync(NULL), b_engine(b_engine), b_userpref(b_userpref), b_data(b_data), @@ -209,11 +211,8 @@ void BlenderSession::reset_session(BL::BlendData& b_data, BL::Depsgraph& b_depsg /* if scene or session parameters changed, it's easier to simply re-create * them rather than trying to distinguish which settings need to be updated */ - - delete session; - + free_session(); create_session(); - return; } |