Bug 80798

Summary: cleanup debug methods
Product: LibreOffice Reporter: Michael Meeks <michael.meeks>
Component: WriterAssignee: Not Assigned <libreoffice-bugs>
Status: NEW --- QA Contact:
Severity: normal    
Priority: medium CC: libreoffice, vmiklos
Version: 4.2.4.1 rc   
Hardware: Other   
OS: All   
Whiteboard: EasyHack DifficultyBeginner SkillCpp TopicCleanup
i915 platform: i915 features:

Description Michael Meeks 2014-07-02 10:06:37 UTC
Loading the bug document in fdo#76260 - we do 8.7 million calls to create OOXMLPropertySetImpl - the vast majority of the cost of that structure is the heap allocation and copying of the debugging member:

OOXMLPropertySetImpl::OOXMLPropertySetImpl()
: msType("OOXMLPropertySetImpl")

We burn 6bn cycles doing just this (per element I guess).

That type is only useful for debugging.

I'll fix the performance issue in this local case - but we shouldn't be exposing this virtual method when it is not used widely I guess.

It'd be nice to have this compiled out of the relevant writerfilter::Reference etc. vtables and/or removed completely.

Its unclear to me what good it provides that some RTTI typeid(*ptr).name() can give us...

Thoughts miklos ? =) 

Hopefully we can leave this as an easy hack though ...
Comment 1 Michael Meeks 2014-07-02 11:40:41 UTC
I've pushed the speedup part; so dropping that from the title for now - even though not doing this OUString thrash would save quite some time really.
Comment 2 Björn Michaelsen 2014-12-02 10:53:09 UTC
adding LibreOffice developer list as CC to unresolved Writer EasyHacks for better visibility.

see e.g. http://nabble.documentfoundation.org/minutes-of-ESC-call-td4076214.html for details

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.