Re: ORBit bug?



On Sat, 10 Mar 2001, Sebastian Wilhelmi wrote:

> > This indeed is an ORBit bug. And I see no easy way to solve that. Even
> > calling Bonobo_PropertySet__free(&set, NULL, CORBA_FALSE); wouldn't help, as
> > ORBit_demarshal_any will be called with dup_strings=TRUE, so we would gain a
> > memory hole. (which of course is better than the current state of affairs,
> > which simply says, that calling SetValues will result in an dying server). I
> > do not know the idl-compiler enough to fix that.
> >
> > We had a nice feature in the now dead-declared CVS HEAD, that would do
> > without free_strings by prefixing all nonfreeable strings by a magic
> > constant (the place is always free because it otherwise hosts the string
> > size) Is there any chance that we backport that, Elliot? Or are you going
> > to fix that otherwise?
>
> Following up on my on post: I sat down today and implemented that. It
> was rather easy and is a small patch. Electric Fence and memprof on
> test/everything showed, that it yields the expected results and the
> best thing is, that no changed to the idl-compiler had been necessary
> (even though it would have been cleaner with changes to
> orbit-idl). That means, that indeed the patched ORBit can be used as a
> drop in replacement for older ORBit versions without having to
> recompile the idl-files. Even new idl-files can work with old
> ORBit-versions. This of course is nice and would allow for the
> immediate includion of this patch into ORBit, which would fix the
> above mentioned bug.
>
> What do you think, Elliot?

>From what I can gather, the right fix should be in the IDL compiler, to
get it to do free_strings or not correctly. Doing magic hacks doesn't
sound like a great idea. What do you think?

-- Elliot
The truth knocks on my door, and I say
"Go away. I'm looking for the truth"
...and so it goes away.






[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]