[Bf-blender-cvs] [50dde3d01ac] master: Fix T54269: saved EXR file files unreadable some editors in Blender.
Brecht Van Lommel
noreply at git.blender.org
Sat Mar 10 06:44:09 CET 2018
Commit: 50dde3d01ac5076cf42a0523d9eab4aac917a990
Author: Brecht Van Lommel
Date: Sat Mar 10 04:33:14 2018 +0100
Branches: master
https://developer.blender.org/rB50dde3d01ac5076cf42a0523d9eab4aac917a990
Fix T54269: saved EXR file files unreadable some editors in Blender.
Don't write the multichannel metadata when there is only a single layer,
and don't unnecessarily consider single layer images with Blender metadata
as multi layer.
===================================================================
M source/blender/imbuf/intern/openexr/openexr_api.cpp
===================================================================
diff --git a/source/blender/imbuf/intern/openexr/openexr_api.cpp b/source/blender/imbuf/intern/openexr/openexr_api.cpp
index 4cb1c13a44a..4e85d70d382 100644
--- a/source/blender/imbuf/intern/openexr/openexr_api.cpp
+++ b/source/blender/imbuf/intern/openexr/openexr_api.cpp
@@ -1621,14 +1621,13 @@ static bool exr_has_alpha(MultiPartInputFile& file)
static bool imb_exr_is_multilayer_file(MultiPartInputFile& file)
{
- const StringAttribute *comments = file.header(0).findTypedAttribute<StringAttribute>("BlenderMultiChannel");
const ChannelList& channels = file.header(0).channels();
std::set <std::string> layerNames;
/* will not include empty layer names */
channels.layers(layerNames);
- if (comments || layerNames.size() > 1)
+ if (layerNames.size() > 1)
return true;
if (layerNames.size()) {
@@ -1667,7 +1666,7 @@ static void imb_exr_type_by_channels(ChannelList& channels, StringVector& views,
}
else {
*r_singlelayer = false;
- *r_multilayer = true;
+ *r_multilayer = (layerNames.size() > 1);
*r_multiview = false;
return;
}
More information about the Bf-blender-cvs
mailing list