[omniORB] COMM_FAILURES and memory corruption
Ralf Hupfer
hupfer@ivi.fhg.de
Tue Nov 5 10:30:02 2002
Hi everybody,
Is there a possibility that omniORB causes memory corruption when an
operation throws an exception?
I am using an interface that takes an in-, out- and inout-parameter. Both
the in- ind inout-parameters are nested sequences. The problem is
caused by the in-parameter, which is allocated on the heap and passed
to the method by the according _var-type. If the operation succeeds,
everything is fine, but if an COMM_FAILURE occurs the in-parameter
seems to be corrupted afterwards (I checked if with NUMEGA
DevPartner Studio). It shows a "dangling pointer" in
mySequence::`scalar deleting destructor'.
As far as I understood the CORBA specification, the in-parameters are
guaranteed to be unchanged after any operation. Has anybody
experienced a similar behavior bevor?
I am using omniORB3.04 on Windows2000, VisualC++ 6.0 and Numega
DevPartner Studio. However, it's not the first time that Numega reveals
memory errors in the omniORB libraries for Windows ...
Thanks for any hints
Ralf