Seems we use this only once.  Wouldn't it be easier to just do if (isExtended()) below?

Aside: And oh, the guy who came up with this format should be taken out back and shot.  Conditionally adding 2 bytes to an index record only based on a bit buried deep inside of the record?  Stupid.  Records are *still* padded out to an 8 byte alignment.  That padding wastes more than the 2 bytes would.  For many records, I'd bet we could fit the 2 additional bytes into the padding.  *sigh*