From beb85f97022cd5fb83f46aee9fea1f7fb93db08a Mon Sep 17 00:00:00 2001 From: Wenzel Jakob Date: Mon, 29 Sep 2014 14:11:38 +0200 Subject: [PATCH] Bitmap::writeOpenEXR(): fix handling of OpenEXR channel names --- src/libcore/bitmap.cpp | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/src/libcore/bitmap.cpp b/src/libcore/bitmap.cpp index 2b1e0d27..5261e75f 100644 --- a/src/libcore/bitmap.cpp +++ b/src/libcore/bitmap.cpp @@ -3247,13 +3247,16 @@ void Bitmap::writeOpenEXR(Stream *stream) const { return; } + if (!m_channelNames.empty() && m_channelNames.size() != (size_t) getChannelCount()) + Log(EWarn, "writeOpenEXR(): 'channelNames' has the wrong number of entries (%i, expected %i), ignoring..!", + (int) m_channelNames.size(), (int) m_channelCount); + + bool explicitChannelNames = false; Imf::ChannelList &channels = header.channels(); - if (!m_channelNames.empty()) { - if (m_channelNames.size() != (size_t) m_channelCount) - Log(EError, "writeOpenEXR(): 'channelNames' has the wrong number of entries (%i, expected %i)!", - (int) m_channelNames.size(), (int) m_channelCount); + if (m_channelNames.size() == (size_t) getChannelCount()) { for (size_t i=0; i