https://issues.apache.org/ooo/show_bug.cgi?id=113608

--- Comment #11 from Andre <[email protected]> ---
Well, as long as SdrObject and SvxShape are two separate classes, everything
remains a workaround.  And as long an SdrObject holds its SvxShape as weak
pointer, every access to that weak pointer has to be guarded.  The only strange
thing is that it appears to be (but I did not check that) that the reference
count of the weak pointer goes to zero without the SvxShape being destroyed.

It might be a good idea to remove the mpSvxShape member altogether.

Regarding you proposed change:

 if( !HasSdrObjectOwnership() ){
    mpObj->setUnoShape( NULL, SdrObject::GrantXShapeAccess()
    ...

I am not sure if it is valid to modify mpObj when it is not owned by the
SvxShape ie HasSdrObjectOwnership() is false.  It might be OK to make the
setUnoShape(NULL...) call when mpObj points back to "this".

-- 
You are receiving this mail because:
You are on the CC list for the bug.

Reply via email to