Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLukas Toenne <lukas.toenne@googlemail.com>2013-09-11 13:02:59 +0400
committerLukas Toenne <lukas.toenne@googlemail.com>2013-09-11 13:02:59 +0400
commitb551476dbd91cd26c9567379213a17c378ee573b (patch)
tree005316fc7876484e86042148000c20bf1565aa4b /source/blender/imbuf
parent17d749eaad35a29155c13ab986651c0fc1926ba6 (diff)
Revert r60034 and proper fix for #36698 by Sergey Sharybin. NULL pointer checks should never be done in color management. Instead this makes sure the look identifier is always initialized correctly to
the default if not defined.
Diffstat (limited to 'source/blender/imbuf')
-rw-r--r--source/blender/imbuf/intern/colormanagement.c22
1 files changed, 11 insertions, 11 deletions
diff --git a/source/blender/imbuf/intern/colormanagement.c b/source/blender/imbuf/intern/colormanagement.c
index b2c45a138fa..9bc0b4dd62d 100644
--- a/source/blender/imbuf/intern/colormanagement.c
+++ b/source/blender/imbuf/intern/colormanagement.c
@@ -750,7 +750,7 @@ static OCIO_ConstProcessorRcPtr *create_display_buffer_processor(const char *loo
OCIO_displayTransformSetView(dt, view_transform);
OCIO_displayTransformSetDisplay(dt, display);
- if (look_descr && look_descr->is_noop == false) {
+ if (look_descr->is_noop == false) {
OCIO_displayTransformSetLooksOverrideEnabled(dt, true);
OCIO_displayTransformSetLooksOverride(dt, look);
}
@@ -989,6 +989,7 @@ static void colormanage_check_view_settings(ColorManagedDisplaySettings *display
{
ColorManagedDisplay *display;
ColorManagedView *default_view = NULL;
+ ColorManagedLook *default_look = (ColorManagedLook *) global_looks.first;
if (view_settings->view_transform[0] == '\0') {
display = colormanage_display_get_named(display_settings->display_device);
@@ -1001,7 +1002,6 @@ static void colormanage_check_view_settings(ColorManagedDisplaySettings *display
}
else {
ColorManagedView *view = colormanage_view_get_named(view_settings->view_transform);
- ColorManagedLook *look;
if (!view) {
display = colormanage_display_get_named(display_settings->display_device);
@@ -1016,16 +1016,16 @@ static void colormanage_check_view_settings(ColorManagedDisplaySettings *display
BLI_strncpy(view_settings->view_transform, default_view->name, sizeof(view_settings->view_transform));
}
}
+ }
- look = colormanage_look_get_named(view_settings->look);
- if (!look) {
- ColorManagedLook *default_look = (ColorManagedLook *) global_looks.first;
-
- /* Prevent paranoid printf when opening files stored prior looks implementation. */
- if (view_settings->look[0]) {
- printf("Color management: %s look \"%s\" not found, setting default \"%s\".\n",
- what, view_settings->look, default_look->name);
- }
+ if (view_settings->look[0] == '\0') {
+ BLI_strncpy(view_settings->look, default_look->name, sizeof(view_settings->look));
+ }
+ else {
+ ColorManagedLook *look = colormanage_look_get_named(view_settings->look);
+ if (look == NULL) {
+ printf("Color management: %s look \"%s\" not found, setting default \"%s\".\n",
+ what, view_settings->look, default_look->name);
BLI_strncpy(view_settings->look, default_look->name, sizeof(view_settings->look));
}