https://bugs.documentfoundation.org/show_bug.cgi?id=79721

Matt K <matt...@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |matt...@gmail.com

--- Comment #43 from Matt K <matt...@gmail.com> ---
Created attachment 192023
  --> https://bugs.documentfoundation.org/attachment.cgi?id=192023&action=edit
Windows Performance Analyzer output

I took an ETW trace on Windows and the attached output shows it doing ~80 secs
worth of work doing a vector insert with the shapes.  I would think that
inserting shapes would be a quick operation, but someone with more knowledge of
the code may be able to tell why it's doing so much work there.

Here is the callstack:

swlo.dll!std::vector<SwRootFrame * ptr64,std::allocator<SwRootFrame * ptr64>
>::insert
swlo.dll!SwDoc::GetUniqueShapeName
swlo.dll!SwFmDrawPage::add
swlo.dll!SwXShape::attach
swlo.dll!SwXText::insertTextContent
xolo.dll!XMLTextImportHelper::InsertTextContent
xolo.dll!XMLTextShapeImportHelper::addShape
xolo.dll!SdXMLShapeContext::AddShape
xolo.dll!SdXMLShapeContext::AddShape
xolo.dll!SdXMLCustomShapeContext::startFastElement
xolo.dll!SvXMLImport::startFastElement
saxlo.dll!sax_fastparser::FastAttributeList::size
saxlo.dll!rtl::OUString::compareToAscii
saxlo.dll!sax_fastparser::FastSaxParserImpl::parseStream
saxlo.dll!sax_fastparser::FastSaxParser::parseStream
xolo.dll!SvXMLImport::parseStream
swlo.dll!XMLReader::Read
swlo.dll!XMLReader::Read
swlo.dll!XMLReader::Read
swlo.dll!SwReader::Read
swlo.dll!SwDocShell::Load
sfxlo.dll!SfxObjectShell::LoadOwnFormat
sfxlo.dll!SfxObjectShell::DoLoad
sfxlo.dll!SfxBaseModel::load
sfxlo.dll!rtl::ToStringHelper<rtl::StringConcat<char16_t,rtl::StringConcatMarker<char16_t>,char16_t
const [40],0> >::length
fwklo.dll!framework::LoadEnv::impl_loadContent
fwklo.dll!framework::LoadEnv::start
fwklo.dll!framework::LoadEnv::startLoading
fwklo.dll!framework::LoadDispatcher::impl_dispatch
fwklo.dll!framework::LoadDispatcher::dispatchWithReturnValue
comphelper.dll!comphelper::SynchronousDispatch::dispatch
sfxlo.dll!SfxApplication::OpenDocExec_Impl
sfxlo.dll!SfxStubSfxApplicationOpenDocExec_Impl
sfxlo.dll!SfxDispatcher::Call_Impl
sfxlo.dll!SfxDispatcher::Execute_
sfxlo.dll!SfxDispatcher::Execute
sfxlo.dll!SfxApplication::OpenDocExec_Impl
sfxlo.dll!SfxStubSfxApplicationOpenDocExec_Impl
sfxlo.dll!SfxDispatcher::Call_Impl
sfxlo.dll!SfxDispatcher::PostMsgHandler
sfxlo.dll!std::invoke<void (cdecl SfxDispatcher::*&
ptr64)(std::unique_ptr<SfxRequest,std::default_delete<SfxRequest> >)
ptr64,SfxDispatcher * ptr64 &
ptr64,std::unique_ptr<SfxRequest,std::default_delete<SfxRequest> > >
sfxlo.dll!std::_Invoker_ret<std::_Unforced>::_Call<void (cdecl
SfxDispatcher::*&
ptr64)(std::unique_ptr<SfxRequest,std::default_delete<SfxRequest> >)
ptr64,SfxDispatcher * ptr64 &
ptr64,std::unique_ptr<SfxRequest,std::default_delete<SfxRequest> > >
sfxlo.dll!std::_Call_binder<std::_Unforced,0,1,void (cdecl
SfxDispatcher::*)(std::unique_ptr<SfxRequest,std::default_delete<SfxRequest> >)
ptr64,std::tuple<SfxDispatcher * ptr64,std::_Ph<1>
>,std::tuple<std::unique_ptr<SfxRequest,std::default_delete<SfxRequest> > &&
ptr64> >
sfxlo.dll!std::_Binder<std::_Unforced,void (cdecl
SfxDispatcher::*)(std::unique_ptr<SfxRequest,std::default_delete<SfxRequest> >)
ptr64,SfxDispatcher * ptr64,std::_Ph<1> const &
ptr64>::operator()<std::unique_ptr<SfxRequest,std::default_delete<SfxRequest> >
>
sfxlo.dll!std::invoke<std::_Binder<std::_Unforced,void (cdecl
SfxDispatcher::*)(std::unique_ptr<SfxRequest,std::default_delete<SfxRequest> >)
ptr64,SfxDispatcher * ptr64,std::_Ph<1> const & ptr64> &
ptr64,std::unique_ptr<SfxRequest,std::default_delete<SfxRequest> > >
sfxlo.dll!std::_Func_impl_no_alloc<std::_Binder<std::_Unforced,void (cdecl
SfxDispatcher::*)(std::unique_ptr<SfxRequest,std::default_delete<SfxRequest> >)
ptr64,SfxDispatcher * ptr64,std::_Ph<1> const &
ptr64>,void,std::unique_ptr<SfxRequest,std::default_delete<SfxRequest> >
>::_Do_call
sfxlo.dll!std::_Func_class<void,std::unique_ptr<SfxRequest,std::default_delete<SfxRequest>
> >::operator()
sfxlo.dll!SfxHintPoster::DoEvent_Impl
sfxlo.dll!SfxHintPoster::LinkStubDoEvent_Impl
vcllo.dll!Link<void * ptr64,void>::Call
vcllo.dll!ImplHandleResize
vcllo.dll!ImplWindowFrameProc
vcllo.dll!SalFrame::CallCallback
vclplug_winlo.dll!ImplHandleSalObjSysCharMsg
vclplug_winlo.dll!WinSalFrame::ResetClipRegion
vclplug_winlo.dll!SalFrameWndProcW
user32.dll!UserCallWinProcCheckWow
user32.dll!DispatchMessageWorker
vclplug_winlo.dll!WinSalInstance::ImplCreateDropTarget
vclplug_winlo.dll!ImplSalYield
vclplug_winlo.dll!WinSalInstance::DoYield
vcllo.dll!ImplSVAppData::ImplQuitMsg
vcllo.dll!Application::Yield
vcllo.dll!Application::Execute
sofficeapp.dll!desktop::Desktop::Main
vcllo.dll!ImplSVMain
vcllo.dll!SVMain
sofficeapp.dll!soffice_main
soffice.bin!?
soffice.bin!main
soffice.bin!__scrt_narrow_environment_policy::initialize_environment
soffice.bin!_alloca_probe
soffice.bin!_alloca_probe
soffice.bin!mainCRTStartup
kernel32.dll!BaseThreadInitThunk
ntdll.dll!RtlUserThreadStart
[Root]

-- 
You are receiving this mail because:
You are the assignee for the bug.

Reply via email to