[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [55699] trunk/blender/source/blender/imbuf /intern/colormanagement.c: Fix for GLSL display: NULL view_settings are allowed now

Sergey Sharybin sergey.vfx at gmail.com
Mon Apr 1 14:08:44 CEST 2013


Revision: 55699
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=55699
Author:   nazgul
Date:     2013-04-01 12:08:43 +0000 (Mon, 01 Apr 2013)
Log Message:
-----------
Fix for GLSL display: NULL view_settings are allowed now

Currently no functional changes for users, but this change
is crucial for further GLSL images display.

Modified Paths:
--------------
    trunk/blender/source/blender/imbuf/intern/colormanagement.c

Modified: trunk/blender/source/blender/imbuf/intern/colormanagement.c
===================================================================
--- trunk/blender/source/blender/imbuf/intern/colormanagement.c	2013-04-01 11:27:47 UTC (rev 55698)
+++ trunk/blender/source/blender/imbuf/intern/colormanagement.c	2013-04-01 12:08:43 UTC (rev 55699)
@@ -2753,12 +2753,27 @@
 int IMB_coloemanagement_setup_glsl_draw(const ColorManagedViewSettings *view_settings,
                                         const ColorManagedDisplaySettings *display_settings)
 {
+	ColorManagedViewSettings default_view_settings;
+	const ColorManagedViewSettings *applied_view_settings;
+
+	if (view_settings) {
+		applied_view_settings = view_settings;
+	}
+	else {
+		/* if no view settings were specified, use default display transformation
+		 * this happens for images which don't want to be displayed with render settings
+		 */
+
+		init_default_view_settings(display_settings,  &default_view_settings);
+		applied_view_settings = &default_view_settings;
+	}
+
 	/* RGB curves mapping is not supported on GPU yet. */
-	if (view_settings->flag & COLORMANAGE_VIEW_USE_CURVES)
+	if (applied_view_settings->flag & COLORMANAGE_VIEW_USE_CURVES)
 		return FALSE;
 
 	/* Make sure OCIO processor is up-to-date. */
-	update_glsl_display_processor(view_settings, display_settings);
+	update_glsl_display_processor(applied_view_settings, display_settings);
 
 	OCIO_setupGLSLDraw(&global_glsl_state.ocio_glsl_state, global_glsl_state.processor);
 




More information about the Bf-blender-cvs mailing list