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:
Diffstat (limited to 'source/blender/imbuf/intern/colormanagement.c')
-rw-r--r--source/blender/imbuf/intern/colormanagement.c25
1 files changed, 9 insertions, 16 deletions
diff --git a/source/blender/imbuf/intern/colormanagement.c b/source/blender/imbuf/intern/colormanagement.c
index c169633fa3c..9dced926dcc 100644
--- a/source/blender/imbuf/intern/colormanagement.c
+++ b/source/blender/imbuf/intern/colormanagement.c
@@ -2616,7 +2616,6 @@ ImBuf *IMB_colormanagement_imbuf_for_write(ImBuf *ibuf,
if (do_colormanagement) {
bool make_byte = false;
- const ImFileType *type;
/* for proper check whether byte buffer is required by a format or not
* should be pretty safe since this image buffer is supposed to be used for
@@ -2629,13 +2628,10 @@ ImBuf *IMB_colormanagement_imbuf_for_write(ImBuf *ibuf,
* we need to allocate byte buffer and store color managed
* image there
*/
- for (type = IMB_FILE_TYPES; type < IMB_FILE_TYPES_LAST; type++) {
- if (type->save && type->ftype(type, colormanaged_ibuf)) {
- if ((type->flag & IM_FTYPE_FLOAT) == 0) {
- make_byte = true;
- }
-
- break;
+ const ImFileType *type = IMB_file_type_from_ibuf(colormanaged_ibuf);
+ if (type != NULL) {
+ if ((type->save != NULL) && (type->flag & IM_FTYPE_FLOAT) == 0) {
+ make_byte = true;
}
}
@@ -3238,14 +3234,11 @@ void IMB_colormanagement_colorspace_from_ibuf_ftype(
}
/* Get color space from file type. */
- const ImFileType *type;
-
- for (type = IMB_FILE_TYPES; type < IMB_FILE_TYPES_LAST; type++) {
- if (type->save && type->ftype(type, ibuf)) {
- const char *role_colorspace;
-
- role_colorspace = IMB_colormanagement_role_colorspace_name_get(type->default_save_role);
-
+ const ImFileType *type = IMB_file_type_from_ibuf(ibuf);
+ if (type != NULL) {
+ if (type->save != NULL) {
+ const char *role_colorspace = IMB_colormanagement_role_colorspace_name_get(
+ type->default_save_role);
BLI_strncpy(colorspace_settings->name, role_colorspace, sizeof(colorspace_settings->name));
}
}