Menu

#98 Linux version fails on reading AAFs with long value strings

open
nobody
None
5
2010-10-07
2010-10-07
Anonymous
No

When reading an AAF with long strings in property values, the size of the internal string representation cannot exceed OMPROPERTYSIZE_MAX, which is 65535 bytes. The check for this is done in OMSSStoredObject::restore() in OMSSStoredObject.cpp.
Since wchar_t in Linux is 4 bytes, this means that the Linux version can only handle strings with a length of max UINT16_MAX/4=16383, while the Windows version can handle up to UINT16_MAX/2=32767 characters due to its 2-byte wchars.
This means that there are (I assume valid) AAF files that can be succesfully read on Windows, but will fail on Linux.

Discussion