Rene Gollent писал 14.01.2013 21:57:
On Mon, Jan 14, 2013 at 3:50 PM, Siarzhuk Zharski <zharik@xxxxxx> wrote:Ahh.. Holy Cow of Binary Compatibility bit me! ;-) Thank you for the pointing it out! Corresponding to previous change in hrev44756: + bool fInstalledNavigateWordwiseShortcuts; + bool fInstalledNavigateToTopOrBottomShortcuts; - uint32 _reserved[7]; + uint32 _reserved[6];If I'm not mistaken, this would've left two padding bytes in betweenfInstalledNavigateToTopOrBottomShortcuts and _reserved. Ergo, the sizeshould actually still be ok since the two extra bools would simply take up the padding bytes. Would need to compare the result of sizeof() to be sure though.
I have checked gcc2 build and look like you are right. In both cases sizeof(BTextView) is 356 and offsets are:
fInstalledNavigateWordwiseShortcuts:328 fInstalledNavigateToTopOrBottomShortcuts:329 _reserved:332 So, looks like we have just utilized those padding bytes. Thank you. BTW, gcc4 build has the same results. -- Kind Regards, S.Zharski