@@ -42,15 +42,14 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
Numbers are recorded in the 32 bit unsigned binary form of the
endianness of the machine generating the file. 64 bit numbers are
- stored as two 32 bit numbers, the low part first. Strings are
- padded with 1 to 4 NUL bytes, to bring the length up to a multiple
- of 4. The number of 4 bytes is stored, followed by the padded
+ stored as two 32 bit numbers, the low part first.
+ The number of bytes is stored, followed by the
string. Zero length and NULL strings are simply stored as a length
of zero (they have no trailing NUL or padding).
int32: byte3 byte2 byte1 byte0 | byte0 byte1 byte2 byte3
int64: int32:low int32:high
- string: int32:0 | int32:length char* char:0 padding
+ string: int32:0 | int32:length char* char:0
padding: | char:0 | char:0 char:0 | char:0 char:0 char:0
item: int32 | int64 | string