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:
authorSergey Sharybin <sergey.vfx@gmail.com>2012-09-26 17:17:47 +0400
committerSergey Sharybin <sergey.vfx@gmail.com>2012-09-26 17:17:47 +0400
commitfae7dd22c77bae06af4082aaac205a9a3e46014c (patch)
treee1c0549a5c1d524d6efa3382a9e8e14d86afd4b6 /source/blender/imbuf
parent36966ccfebeb3c91cf17a9cb4dba91d4390f6890 (diff)
Color Management: resolve warnings when OCIO configuration file misses None display
Diffstat (limited to 'source/blender/imbuf')
-rw-r--r--source/blender/imbuf/IMB_colormanagement.h1
-rw-r--r--source/blender/imbuf/intern/IMB_colormanagement_intern.h1
-rw-r--r--source/blender/imbuf/intern/colormanagement.c25
3 files changed, 22 insertions, 5 deletions
diff --git a/source/blender/imbuf/IMB_colormanagement.h b/source/blender/imbuf/IMB_colormanagement.h
index 26fc61159c4..e2604241caf 100644
--- a/source/blender/imbuf/IMB_colormanagement.h
+++ b/source/blender/imbuf/IMB_colormanagement.h
@@ -108,6 +108,7 @@ int IMB_colormanagement_display_get_named_index(const char *name);
const char *IMB_colormanagement_display_get_indexed_name(int index);
const char *IMB_colormanagement_display_get_default_name(void);
struct ColorManagedDisplay *IMB_colormanagement_display_get_named(const char *name);
+const char *IMB_colormanagement_display_get_none_name(void);
/* ** View funcrions ** */
int IMB_colormanagement_view_get_named_index(const char *name);
diff --git a/source/blender/imbuf/intern/IMB_colormanagement_intern.h b/source/blender/imbuf/intern/IMB_colormanagement_intern.h
index 648dd735bbe..35a6ea9b207 100644
--- a/source/blender/imbuf/intern/IMB_colormanagement_intern.h
+++ b/source/blender/imbuf/intern/IMB_colormanagement_intern.h
@@ -74,6 +74,7 @@ void colormanagement_exit(void);
void colormanage_cache_free(struct ImBuf *ibuf);
+const char *colormanage_display_get_default_name(void);
struct ColorManagedDisplay *colormanage_display_get_default(void);
struct ColorManagedDisplay *colormanage_display_add(const char *name);
struct ColorManagedDisplay *colormanage_display_get_named(const char *name);
diff --git a/source/blender/imbuf/intern/colormanagement.c b/source/blender/imbuf/intern/colormanagement.c
index d8e8b4dab8b..cb03654ad6a 100644
--- a/source/blender/imbuf/intern/colormanagement.c
+++ b/source/blender/imbuf/intern/colormanagement.c
@@ -1893,10 +1893,10 @@ void IMB_display_buffer_release(void *cache_handle)
/*********************** Display functions *************************/
-ColorManagedDisplay *colormanage_display_get_default(void)
+const char *colormanage_display_get_default_name(void)
{
ConstConfigRcPtr *config = OCIO_getCurrentConfig();
- const char *display;
+ const char *display_name;
if (!config) {
/* no valid OCIO configuration, can't get default display */
@@ -1904,14 +1904,21 @@ ColorManagedDisplay *colormanage_display_get_default(void)
return NULL;
}
- display = OCIO_configGetDefaultDisplay(config);
+ display_name = OCIO_configGetDefaultDisplay(config);
OCIO_configRelease(config);
- if (display[0] == '\0')
+ return display_name;
+}
+
+ColorManagedDisplay *colormanage_display_get_default(void)
+{
+ const char *display_name = colormanage_display_get_default_name();
+
+ if (display_name[0] == '\0')
return NULL;
- return colormanage_display_get_named(display);
+ return colormanage_display_get_named(display_name);
}
ColorManagedDisplay *colormanage_display_add(const char *name)
@@ -1993,6 +2000,14 @@ ColorManagedDisplay *IMB_colormanagement_display_get_named(const char *name)
return colormanage_display_get_named(name);
}
+const char *IMB_colormanagement_display_get_none_name(void)
+{
+ if (colormanage_display_get_named("None") != NULL)
+ return "NULL";
+
+ return colormanage_display_get_default_name();
+}
+
/*********************** View functions *************************/
const char *colormanage_view_get_default_name(const ColorManagedDisplay *display)