Commit: 1ea51570514e5731ca8327f9dafbe6b7515a8142
Author: Jeroen Bakker
Date:   Mon Mar 29 12:14:59 2021 +0200
Branches: master
https://developer.blender.org/rB1ea51570514e5731ca8327f9dafbe6b7515a8142

Fix: Cryptomatte Metadata Trimmed to 1024.

When reading metadata from image files the metadata is trimmed to 1024.
For cryptomatte the metadata can contain json data and should not be
trimmed. Resulting additional checks in the manifest parser for
incomplete json data.

You could argue to add an exception for cryptomatte, but that would
still allows misuse. When the direction of this patch is accepted we
should consider removing `maxlen` from `IDP_AssignString` as it
doesn't seem to be used anywhere else.

Reviewed By: #images_movies, mont29, sergey

Differential Revision: https://developer.blender.org/D10825

===================================================================

M       source/blender/imbuf/intern/metadata.c

===================================================================

diff --git a/source/blender/imbuf/intern/metadata.c 
b/source/blender/imbuf/intern/metadata.c
index d8abd3411cb..c016379fe64 100644
--- a/source/blender/imbuf/intern/metadata.c
+++ b/source/blender/imbuf/intern/metadata.c
@@ -38,7 +38,6 @@
 
 #include "IMB_metadata.h"
 
-#define METADATA_MAX_VALUE_LENGTH 1024
 
 void IMB_metadata_ensure(struct IDProperty **metadata)
 {
@@ -99,11 +98,11 @@ void IMB_metadata_set_field(struct IDProperty *metadata, 
const char *key, const
   }
 
   if (prop == NULL) {
-    prop = IDP_NewString(value, key, METADATA_MAX_VALUE_LENGTH);
+    prop = IDP_NewString(value, key, 0);
     IDP_AddToGroup(metadata, prop);
   }
 
-  IDP_AssignString(prop, value, METADATA_MAX_VALUE_LENGTH);
+  IDP_AssignString(prop, value, 0);
 }
 
 void IMB_metadata_foreach(struct ImBuf *ibuf, IMBMetadataForeachCb callback, 
void *userdata)

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to