[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [52183] trunk/blender/source/blender/imbuf /intern/openexr: Bugfix #33161
Ton Roosendaal
ton at blender.org
Tue Nov 13 16:36:48 CET 2012
Revision: 52183
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=52183
Author: ton
Date: 2012-11-13 15:36:46 +0000 (Tue, 13 Nov 2012)
Log Message:
-----------
Bugfix #33161
The new node that outputs multilayer was using longer names than default.
Caused old code that truncated pass names to 11 chars to fail on loading exr.
This was an old limit in openexr - but that got fixed long ago.
On todo: check current openexr name lenghts, and all code in Blender that
defines pass/layer names.
Modified Paths:
--------------
trunk/blender/source/blender/imbuf/intern/openexr/openexr_api.cpp
trunk/blender/source/blender/imbuf/intern/openexr/openexr_multi.h
Modified: trunk/blender/source/blender/imbuf/intern/openexr/openexr_api.cpp
===================================================================
--- trunk/blender/source/blender/imbuf/intern/openexr/openexr_api.cpp 2012-11-13 14:53:33 UTC (rev 52182)
+++ trunk/blender/source/blender/imbuf/intern/openexr/openexr_api.cpp 2012-11-13 15:36:46 UTC (rev 52183)
@@ -881,7 +881,7 @@
/* get a substring from the end of the name, separated by '.' */
static int imb_exr_split_token(const char *str, const char *end, const char **token)
{
- int maxlen = end - str;
+ int64_t maxlen = end - str;
int len = 0;
while (len < maxlen && *(end - len - 1) != '.') {
len++;
Modified: trunk/blender/source/blender/imbuf/intern/openexr/openexr_multi.h
===================================================================
--- trunk/blender/source/blender/imbuf/intern/openexr/openexr_multi.h 2012-11-13 14:53:33 UTC (rev 52182)
+++ trunk/blender/source/blender/imbuf/intern/openexr/openexr_multi.h 2012-11-13 15:36:46 UTC (rev 52183)
@@ -35,10 +35,10 @@
/* experiment with more advanced exr api */
-/* Note: as for now openexr only supports 32 chars in channel names.
- * This api also supports max 8 channels per pass now. easy to fix! */
-#define EXR_LAY_MAXNAME 51
-#define EXR_PASS_MAXNAME 11
+/* XXX layer+pass name max 64? */
+/* This api also supports max 8 channels per pass now. easy to fix! */
+#define EXR_LAY_MAXNAME 64
+#define EXR_PASS_MAXNAME 64
#define EXR_TOT_MAXNAME 64
#define EXR_PASS_MAXCHAN 8
More information about the Bf-blender-cvs
mailing list