LIFX Developer Zone

Documentation of StateExtendedColorZones incorrect?

When receiving StateExtendedColorZones messages, they are 1 byte longer than my program expects.
According to the documentation, the payload part of that message looks like this:

uint16 zones_count
uint16 zone_index
uint8 colors_count
Color colors[82]

…which results in 661 bytes. Together with the 36 byte header, the message should therefore be expected to be 697 bytes long. But what I’m receiving is 698 bytes long.
My suspicion is that colors_count is either meant to be uint16, or there is a reserved byte right after it.
Edit: no, that’s not where the extra byte can go, the color values don’t make sense otherwise. Now I just added one reserved byte at the very end of my message definition, below colors (which in the messages I receive is 0 anyway) and it works for me.
Did I miss something or is this an error in the documentation?