Bug 34465 - get rid of all calls to virtual const SfxPoolItem* Put( const SfxPoolItem&, USHORT nWhich)

Maciej Rumianowski maciej.rumianowski at gmail.com
Thu Nov 22 05:25:01 PST 2012


2012/11/22 Maciej Rumianowski <maciej.rumianowski at gmail.com>

>
>
> 2012/11/22 Maciej Rumianowski <maciej.rumianowski at gmail.com>
>
>> Hi Bjoern,
>>
>> I have hit a problem that i don't fully understand. Disabled items are
>> SfxVoidItem with Which 0, but inserted with different one. State of Item is
>> check with TYPE Macro as below
>>
>>> if ( (*ppFnd)->Type() == TYPE(SfxVoidItem) )
>>>                         return SFX_ITEM_DISABLED;
>>>
>> I've found the way it compiles and run (below), i will also check if the
> above line is working, tests seem to not touch that code and thats why it
> never crashed.
>
>> if( (*ppFnd)->StaticType() == SfxVoidItem::StaticType() )
>>
>
Ok I lack knowledge about inheritance and what really is called. Above are
not equal :(

> (gdb) print (*ppFnd)->StaticType() == (*ppFnd)->Type()
> $7 = false
>

But why I get error accessing Type() at

> 0x4496cb31 in SfxItemSet::~SfxItemSet (this=0xbfff51e8,
> __in_chrg=<optimized out>) at /home/maciej/programowanie/
>>
>> libreoffice/libo/svl/source/items/itemset.cxx:314
>> 314                    if( (*ppFnd)->Type() == TYPE(SfxVoidItem) )
>
> Best Regards
    Maciek
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/libreoffice/attachments/20121122/9692a278/attachment.html>


More information about the LibreOffice mailing list