[Bf-blender-cvs] [7cd86cd1fee] blender2.8: Cycles: Fix memory leak with session

Sergey Sharybin noreply at git.blender.org
Mon Jun 25 17:42:06 CEST 2018


Commit: 7cd86cd1feedefcc3d62b85bc3a6909f4d6b492e
Author: Sergey Sharybin
Date:   Mon Jun 25 17:01:24 2018 +0200
Branches: blender2.8
https://developer.blender.org/rB7cd86cd1feedefcc3d62b85bc3a6909f4d6b492e

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.

===================================================================

M	intern/cycles/blender/blender_session.cpp

===================================================================

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;
 	}



More information about the Bf-blender-cvs mailing list