Hello, I just have a question regarding the size of the HFS Plus - Catalog Thread Record specified in the Apple Universal Interfaces headers -
typedef UInt16 UniChar;
/* HFSUniStr255 is the Unicode equivalent of Str255 */ struct HFSUniStr255 { UInt16 length; /* number of unicode characters */ UniChar unicode[255]; /* unicode characters */ };
/* HFS Plus catalog thread record -- 264 bytes */ struct HFSPlusCatalogThread { UInt16 recordType; /* record type */ UInt16 reserved; /* reserved - set to zero */ HFSCatalogNodeID parentID; /* parent ID for this catalog node */ HFSUniStr255 nodeName; /* name of this catalog node (variable length) */ }; typedef struct HFSPlusCatalogThread HFSPlusCatalogThread;
Based on the above declarations shouldn't the size for the HFSPlus catalog thread record be 2+2+4 (since CNID's are 4 bytes long ) + 256*2 = 264+256 instead of 264 as mentioned above ? I think someone probably forgot to multiply the 256 by 2 but I just wanted to make sure that is an error.
I'd be happy to hear some feedback from the list wrt this.
Best Regards, Nandini Hengen