[Bf-blender-cvs] [6c23497] master: Fix T45086: Crash showing scopes

Sergey Sharybin noreply at git.blender.org
Mon Jun 15 22:18:41 CEST 2015


Commit: 6c23497185b90d6b7b2485f4468a25db24fa6c21
Author: Sergey Sharybin
Date:   Mon Jun 15 22:17:16 2015 +0200
Branches: master
https://developer.blender.org/rB6c23497185b90d6b7b2485f4468a25db24fa6c21

Fix T45086: Crash showing scopes

Was a rounding issue, which was previously solved by quite simple check.
Well, let's do the same check again :)

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

M	source/blender/blenkernel/intern/colortools.c

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

diff --git a/source/blender/blenkernel/intern/colortools.c b/source/blender/blenkernel/intern/colortools.c
index 9cce929..3c70bd4 100644
--- a/source/blender/blenkernel/intern/colortools.c
+++ b/source/blender/blenkernel/intern/colortools.c
@@ -1135,7 +1135,8 @@ void scopes_update(Scopes *scopes, ImBuf *ibuf, const ColorManagedViewSettings *
 #endif
 		const float *rf = NULL;
 		const unsigned char *rc = NULL;
-		const bool do_sample_line = (y % rows_per_sample_line) == 0;
+		const int savedlines = y / rows_per_sample_line;
+		const bool do_sample_line = (savedlines < scopes->sample_lines) && (y % rows_per_sample_line) == 0;
 		float min[3] = { FLT_MAX,  FLT_MAX,  FLT_MAX},
 		      max[3] = {-FLT_MAX, -FLT_MAX, -FLT_MAX};
 		int x, c;
@@ -1183,7 +1184,6 @@ void scopes_update(Scopes *scopes, ImBuf *ibuf, const ColorManagedViewSettings *
 			/* save sample if needed */
 			if (do_sample_line) {
 				const float fx = (float)x / (float)ibuf->x;
-				const int savedlines = y / rows_per_sample_line;
 				const int idx = 2 * (ibuf->x * savedlines + x);
 				save_sample_line(scopes, idx, fx, rgba, ycc);
 			}




More information about the Bf-blender-cvs mailing list