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
This commit is contained in:
parent
35cf34de6d
commit
1ea5157051
|
@ -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)
|
||||
|
|
Loading…
Reference in New Issue