[V4CC/VSDK] pool_free() // Object Ptr creation crash

Ruslan Zasukhin ruslan_zasukhin at valentina-db.com
Tue Jun 16 13:08:18 CDT 2009


On 6/16/09 6:44 PM, "Justin Drury" <justin at soundminer.com> wrote:

Hi Justin,

Glad to hear from you.
And thanks for beta testing of 4.2!

> Hi Ruslan. using 4.2 rc1
> 
> The following crashes
> 
> I_Property_Ptr pTarget = new Prop_Target( inTarget->pTable );
>     I_Property_Ptr pOnDeletion = new Prop_OnDeletion(
> EOnDeletion(inOnDeletion) );
> 
> I_PropertyContainer_Ptr pProps=NULL;
>     if ( param1 != NULL)
>     {
>         pProps = new PropertyContainer();
>       
>         if (param1)
>             pProps->Add(param1);
>         if (param2)
>             pProps->Add(param2);
>     }
> 
> pFld=pTable->CreateField( u_name.c_str(), fbl::kTypeObjectPtr,
> (fbl::ushort) 0, pProps );
> 
> This code has worked for quite some time. I noticed you had tweaked some
> memory management stuff.
> 
> swapping to the CreateObjectPtr function stops the crash, just thought
> i'd mention it if its a landmine for others!

Okay,

So issue is that your app has made own new
But our DLL have used own delete ...

Hmm,

Yes somebody else can also catch into this.
C++ and Obj developers.

It needs we should provide more factories, and close ability create via
constructors ...


> Justin
> 
> (The ~smart_ptr is my pProps smart ptr)
> 
> #0  0x01d288ef in __pool_free ()
> #1  0x01d29129 in fbl_free ()
> #2  0x01d28505 in fbl_delete ()
> #3  0x01d2852d in operator delete ()
> #4  0x01cef6d8 in fbl::PropertyContainer::Release ()
> #5  0x0000b747 in fbl::smart_ptr<fbl::I_PropertyContainer>::~smart_ptr
> (this=0xbfffe31c) at FBL_Smart_Ptr.h:63

-- 
Best regards,

Ruslan Zasukhin
VP Engineering and New Technology
Paradigma Software, Inc

Valentina - Joining Worlds of Information
http://www.paradigmasoft.com

[I feel the need: the need for speed]




More information about the Valentina mailing list