[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [50380] branches/soc-2011-tomato/source/ blender/imbuf/intern/colormanagement.c: Color Management: fix for view/ display settings validation

Sergey Sharybin sergey.vfx at gmail.com
Tue Sep 4 14:32:18 CEST 2012


Revision: 50380
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=50380
Author:   nazgul
Date:     2012-09-04 12:32:18 +0000 (Tue, 04 Sep 2012)
Log Message:
-----------
Color Management: fix for view/display settings validation

It was a misusage of LinkData and actual data leading to wrong
string comparsion and possible wrong memory access.

Modified Paths:
--------------
    branches/soc-2011-tomato/source/blender/imbuf/intern/colormanagement.c

Modified: branches/soc-2011-tomato/source/blender/imbuf/intern/colormanagement.c
===================================================================
--- branches/soc-2011-tomato/source/blender/imbuf/intern/colormanagement.c	2012-09-04 12:32:12 UTC (rev 50379)
+++ branches/soc-2011-tomato/source/blender/imbuf/intern/colormanagement.c	2012-09-04 12:32:18 UTC (rev 50380)
@@ -1453,17 +1453,20 @@
 {
 #ifdef WITH_OCIO
 	ColorManagedDisplay *display;
-	ColorManagedView *default_view, *view;
+	ColorManagedView *default_view;
+	LinkData *view_link;
 
 	display = colormanage_display_get_named(display_settings->display_device);
 	default_view = colormanage_view_get_default(display);
 
-	for (view = display->views.first; view; view = view->next) {
+	for (view_link = display->views.first; view_link; view_link = view_link->next) {
+		ColorManagedView *view = view_link->data;
+
 		if (!strcmp(view->name, view_settings->view_transform))
 			break;
 	}
 
-	if (view == NULL)
+	if (view_link == NULL)
 		BLI_strncpy(view_settings->view_transform, default_view->name, sizeof(view_settings->view_transform));
 #else
 	(void) display_settings;




More information about the Bf-blender-cvs mailing list