[omniORB] String member

David Riddoch djr@uk.research.att.com
Wed, 9 Feb 2000 14:39:50 +0000 (GMT)


Hi,


This message covers some important info about String_member in omniORB 2.8
and 3pre.

Someone pointed out a while ago that omniORB initialised string members to
zero instead of the empty string, as mandated by the spec.  We put in a
fix, but this broke various other parts of the ORB ... and we have now
discovered a place where this cannot be safely fixed without breaking the
library interface for 2.8 (Any extraction).  Thus I have broken it back!
Here's the state of play:


omniORB 2.8
-----------
Initialises string members to zero, and other than that everything works.

omniORB 2.8 latest CVS/snapshot*
-------------------------------
By default string members are initialised to zero (as above).

If you really need them to be initialised to the empty string you must
define the pre-processor macro OMNI_EMPTY_STRING_MEMBERS and recompile
absolutely everything (libraries, applications the lot).  In this case the
empty string is always heap allocated.  This is slightly inefficient, but
at least it doesn't break other bits of the ORB.

omniORB 3pre latest CVS/snapshot*
--------------------------------
String members are initialised to the empty string, and hopefully
everything works.  A single instance of the empty string is statically
allocated and shared by all, so hopefully this will be nice and efficient.

Let me know if there are still any problems!!!


* You will see these changes in the CVS/snapshots as of tomorrow morning.


Cheers,
David