[Bf-blender-cvs] [2de34ba] master: Fix T45109: multi-view regression /w screen-cast

Campbell Barton noreply at git.blender.org
Sat Jun 20 06:58:40 CEST 2015


Commit: 2de34ba31dec8f2f31cf817477087c30ddcbd1b0
Author: Campbell Barton
Date:   Sat Jun 20 14:53:05 2015 +1000
Branches: master
https://developer.blender.org/rB2de34ba31dec8f2f31cf817477087c30ddcbd1b0

Fix T45109: multi-view regression /w screen-cast

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

M	source/blender/editors/screen/screendump.c

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

diff --git a/source/blender/editors/screen/screendump.c b/source/blender/editors/screen/screendump.c
index 4644f0a..3f66d84 100644
--- a/source/blender/editors/screen/screendump.c
+++ b/source/blender/editors/screen/screendump.c
@@ -303,6 +303,8 @@ typedef struct ScreenshotJob {
 	const short *stop;
 	const short *do_update;
 	ReportList reports;
+
+	bMovieHandle *movie_handle;
 	void *movie_ctx;
 } ScreenshotJob;
 
@@ -314,8 +316,11 @@ static void screenshot_freejob(void *sjv)
 	if (sj->dumprect)
 		MEM_freeN(sj->dumprect);
 
-	if (sj->movie_ctx)
-		MEM_freeN(sj->movie_ctx);
+	if (sj->movie_handle) {
+		bMovieHandle *mh = sj->movie_handle;
+		mh->end_movie(sj->movie_ctx);
+		mh->context_free(sj->movie_ctx);
+	}
 
 	MEM_freeN(sj);
 }
@@ -350,6 +355,7 @@ static void screenshot_startjob(void *sjv, short *stop, short *do_update, float
 	if (BKE_imtype_is_movie(rd.im_format.imtype)) {
 		mh = BKE_movie_handle_get(sj->scene->r.im_format.imtype);
 		sj->movie_ctx = mh->context_create();
+		sj->movie_handle = mh;
 
 		if (!mh->start_movie(sj->movie_ctx, sj->scene, &rd, sj->dumpsx, sj->dumpsy, &sj->reports, false, "")) {
 			printf("screencast job stopped\n");
@@ -418,6 +424,7 @@ static void screenshot_startjob(void *sjv, short *stop, short *do_update, float
 	if (mh) {
 		mh->end_movie(sj->movie_ctx);
 		mh->context_free(sj->movie_ctx);
+		sj->movie_handle = NULL;
 	}
 
 	BKE_report(&sj->reports, RPT_INFO, "Screencast job stopped");




More information about the Bf-blender-cvs mailing list