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.