diff options
-rw-r--r-- | ext/atom.lv2/atom-helpers.h | 4 | ||||
-rw-r--r-- | ext/atom.lv2/atom.ttl | 2 |
2 files changed, 4 insertions, 2 deletions
diff --git a/ext/atom.lv2/atom-helpers.h b/ext/atom.lv2/atom-helpers.h index f4908e3..e14a1e9 100644 --- a/ext/atom.lv2/atom-helpers.h +++ b/ext/atom.lv2/atom-helpers.h @@ -37,11 +37,11 @@ */ -/** Pad a size to 64 bits (for atom sizes) */ +/** Pad a size to 4 bytes (32 bits) */ static inline uint16_t lv2_atom_pad_size(uint16_t size) { - return (size + 7) & (~7); + return (size + 3) & (~3); } typedef LV2_Atom_Property* LV2_Atom_Dict_Iter; diff --git a/ext/atom.lv2/atom.ttl b/ext/atom.lv2/atom.ttl index 9e8d043..9158328 100644 --- a/ext/atom.lv2/atom.ttl +++ b/ext/atom.lv2/atom.ttl @@ -59,6 +59,8 @@ with a time stamp header prepended. Atoms SHOULD be used anywhere a "value" needs to be stored or communicated, to allow implementations to be polymorphic and extensible. +Atoms (the beginning of the LV2_Atom header) MUST be 32-bit aligned. + Optionally, the host MAY support "Blobs", which are dynamically allocated chunks of memory that (unlike Atoms) are not necessarily POD. Blobs are accessed via references, which are a special case of Atom that always have |