id3v2: re-fix handling of v2.4 extended headers
The various id3v2 specs handle the extended header sizes differently (because hey, it wouldn't be fun otherwise). http://id3.org/id3v2.3.0 states: "Where the 'Extended header size', currently 6 or 10 bytes, excludes itself." http://id3.org/id3v2.4.0-structure states: Extended header size 4 * %0xxxxxxx Number of flag bytes $01 Extended Flags $xx Where the 'Extended header size' is the size of the whole extended header, stored as a 32 bit synchsafe integer. An extended header can thus never have a size of fewer than six bytes. So in id3v2.4.0 it's the *whole* extended header size (a-la ISOBMFF atom), whereas in id3v2.3.0 it's the extended header size *excluding* those 4 initial bytes. And for other versions, god knows.. Fixes regression introduced in commit da607005. https://bugzilla.gnome.org/show_bug.cgi?id=792983