Go to the FreeLists Home Page Home Signup Help Login
 



[openbeosnetteam] || [Date Prev] [11-2002 Date Index] [Date Next] || [Thread Prev] [11-2002 Thread Index] [Thread Next]

[openbeosnetteam] NetDebug.h break BC

  • From: Philippe Houdoin <philippe.houdoin@xxxxxxx>
  • To: openbeosnetteam@xxxxxxxxxxxxx
  • Date: Wed, 13 Nov 2002 17:01:17 +0100 (CET)
Quoting Matthijs Hollemans:
>> NetBuffer class is NOT binary compatible. I thought 
>> into fixing this myself, but can't find a quick BC HOWTO 
> 
> <http://home.concepts.nl/~hollies/midi/binarycompat.html>

Oh, thanks for quick answer!

So, based on this HOW-TO, the current/headers/os/net/NetBuffer.h
break BC because:

- the protected status_t m_init should be somewhere. 
I guess fInitialized make a good candidate to be replace by m_init...

How I understand it, the order in which variables appears 
in the class definition doesn't matter here, as it's only important 
for the vtable layout, so only methods, not variables?

- _ReservedBNetBufferFBCCruft{1..6}() private virtuals methods should be 
there, in the same order.

- And what about the newly added protected variables fData, fDataSize, 
fStackSize, fCapacity? No issue here?

So, to fix it, should I only need to:
- export again a status_t m_init protected variable
- export again the 6 virtual void ReservedBNetBufferFBCCruft<n>() 
private methods
- keep the same sizeof(BNetBuffer) as under R5?

-Philippe, BC newbie.






[ Home | Signup | Help | Login | Archives | Lists ]

All trademarks and copyrights within the FreeLists archives are owned by their respective owners.
Everything else ©2007 Avenir Technologies, LLC.