Age | Commit message (Collapse) | Author |
|
Change-Id: I0505cf418688d568c0c110bc70b2552e2fb8265c
|
|
...follow-up to d2a59bb53ab6c6a364538bdc6928420d8cf72ba0 "Avoid deadlock when
two threads call into Frame::close"
Change-Id: I26fae3fffce683888805efcc450065c3737ec3c5
|
|
...as happened at least once in JunitTest_framework_copmlex with
> Thread 27 (Thread 0x2ac7e60d1700 (LWP 30831)):
> #0 0x00002ac7b781c89d in __lll_lock_wait () at ../sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:135
> #1 0x00002ac7b7816a36 in __GI___pthread_mutex_lock (mutex=0x1ce1720) at ../nptl/pthread_mutex_lock.c:116
> #2 0x00002ac7b6e6b257 in osl_acquireMutex(oslMutexImpl*) (pMutex=0x1ce1720) at sal/osl/unx/mutex.cxx:99
> #3 0x00002ac7bf928098 in osl::Mutex::acquire() (this=0x1ce16f8) at include/osl/mutex.hxx:56
> #4 0x00002ac7c022d123 in SalYieldMutex::acquire() (this=0x1ce16f0) at vcl/unx/generic/app/geninst.cxx:54
> #5 0x00002ac7e48442ab in SolarMutexGuard::SolarMutexGuard() (this=0x2ac7e60cedb0) at include/vcl/svapp.hxx:1476
> #6 0x00002ac7e4aa7747 in framework::AddonsToolBarWrapper::dispose() (this=0x2ac7e7fbcd50) at framework/source/uielement/addonstoolbarwrapper.cxx:73
> #7 0x00002ac7e4947503 in framework::ToolbarLayoutManager::destroyToolbars() (this=0x2ac7dbf88018) at framework/source/layoutmanager/toolbarlayoutmanager.cxx:654
> #8 0x00002ac7e494364c in framework::ToolbarLayoutManager::reset() (this=0x2ac7dbf88018) at framework/source/layoutmanager/toolbarlayoutmanager.cxx:363
> #9 0x00002ac7e492a1d6 in framework::LayoutManager::implts_reset(bool) (this=0x2ac7dbfbcc40, bAttached=false) at framework/source/layoutmanager/layoutmanager.cxx:414
> #10 0x00002ac7e493a404 in framework::LayoutManager::frameAction(com::sun::star::frame::FrameActionEvent const&) (this=0x2ac7dbfbcc40, aEvent=...) at framework/source/layoutmanager/layoutmanager.cxx:2807
> #11 0x00002ac7e49e57dc in (anonymous namespace)::Frame::implts_sendFrameActionEvent(com::sun::star::frame::FrameAction const&) (this=0x2ac7e7fb2050, aAction=@0x2ac7e60cf73c: com::sun::star::frame::FrameAction_COMPONENT_DETACHING) at framework/source/services/frame.cxx:2845
> #12 0x00002ac7e49ded07 in (anonymous namespace)::Frame::setComponent(com::sun::star::uno::Reference<com::sun::star::awt::XWindow> const&, com::sun::star::uno::Reference<com::sun::star::frame::XController> const&) (this=0x2ac7e7fb2050, xComponentWindow=empty uno::Reference, xController=empty uno::Reference) at framework/source/services/frame.cxx:1509
> #13 0x00002ac7e49e293b in (anonymous namespace)::Frame::close(unsigned char) (this=0x2ac7e7fb2050, bDeliverOwnership=0 '\000') at framework/source/services/frame.cxx:1770
> #14 0x00002ac7e49ce635 in framework::Desktop::impl_closeFrames(bool) (this=0x2ac7daf2f430, bAllowUI=true) at framework/source/services/desktop.cxx:1674
> #15 0x00002ac7e49cd6ee in framework::Desktop::terminate() (this=0x2ac7daf2f430) at framework/source/services/desktop.cxx:238
> #16 0x00002ac7da45deb4 in gcc3::callVirtualMethod(void*, unsigned int, void*, _typelib_TypeDescriptionReference*, bool, unsigned long*, unsigned int, unsigned long*, double*) (pThis=0x2ac7daf2f4a0, nVtableIndex=3, pRegisterReturn=0x2ac7f41b36d0, pReturnTypeRef=0x1ce84c0, bSimpleReturn=true, pStack=0x2ac7e60cfd00, nStack=0, pGPR=0x2ac7e60cffc0, pFPR=0x2ac7e60cff80) at bridges/source/cpp_uno/gcc3_linux_x86-64/callvirtualmethod.cxx:77
> #17 0x00002ac7da45cccf in cpp_call(bridges::cpp_uno::shared::UnoInterfaceProxy*, bridges::cpp_uno::shared::VtableSlot, _typelib_TypeDescriptionReference*, int, _typelib_MethodParameter*, void*, void**, _uno_Any**) (pThis=0x2ac7f40f0ea0, aVtableSlot=..., pReturnTypeRef=0x1ce84c0, nParams=0, pParams=0x0, pUnoReturn=0x2ac7f41b36d0, pUnoArgs=0x0, ppUnoExc=0x2ac7e60d0560) at bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx:241
> #18 0x00002ac7da45c459 in bridges::cpp_uno::shared::unoInterfaceProxyDispatch(_uno_Interface*, _typelib_TypeDescription const*, void*, void**, _uno_Any**) (pUnoI=0x2ac7f40f0ea0, pMemberDescr=0x2ac7f00027c0, pReturn=0x2ac7f41b36d0, pArgs=0x0, ppException=0x2ac7e60d0560) at bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx:430
> #19 0x00002ac7e40401ea in binaryurp::IncomingRequest::execute_throw(binaryurp::BinaryAny*, std::__debug::vector<binaryurp::BinaryAny, std::allocator<binaryurp::BinaryAny> >*) const (this=0x2ac7f0002870, returnValue=0x2ac7e60d09d0, outArguments=0x2ac7e60d0998) at binaryurp/source/incomingrequest.cxx:239
> #20 0x00002ac7e403e88b in binaryurp::IncomingRequest::execute() const (this=0x2ac7f0002870) at binaryurp/source/incomingrequest.cxx:73
> #21 0x00002ac7e406927d in request(void*) (pThreadSpecificData=0x2ac7f0002870) at binaryurp/source/reader.cxx:83
> #22 0x00002ac7b998953b in cppu_threadpool::JobQueue::enter(long, bool) (this=0x2ac7f0002d30, nDisposeId=47038213394384, bReturnWhenNoJob=true) at cppu/source/threadpool/jobqueue.cxx:107
> #23 0x00002ac7b998dc25 in cppu_threadpool::ORequestThread::run() (this=0x2ac7f0000fd0) at cppu/source/threadpool/thread.cxx:165
> #24 0x00002ac7b998fb0e in threadFunc(void*) (param=0x2ac7f0000fe0) at include/osl/thread.hxx:185
> #25 0x00002ac7b6e8190b in osl_thread_start_Impl(void*) (pData=0x2ac7f0001020) at sal/osl/unx/thread.cxx:240
> #26 0x00002ac7b781460a in start_thread (arg=0x2ac7e60d1700) at pthread_create.c:334
> #27 0x00002ac7b754ea4d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109
> Thread 1 (Thread 0x2ac7b6cf7340 (LWP 30697)):
> #0 0x00002ac7b7819b10 in pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
> #1 0x00002ac7b6e5b316 in osl_waitCondition(oslCondition, TimeValue const*) (Condition=0x2ac7f41e10b0, pTimeout=0x0) at sal/osl/unx/conditn.cxx:228
> #2 0x00002ac7cca51370 in osl::Condition::wait(TimeValue const*) (this=0x2ac7e7fb20d8, pTimeout=0x0) at include/osl/conditn.hxx:84
> #3 0x00002ac7cca50f90 in framework::Gate::wait() (this=0x2ac7e7fb20d0) at framework/inc/threadhelp/gate.hxx:123
> #4 0x00002ac7cca50708 in framework::TransactionManager::setWorkingMode(framework::EWorkingMode) (this=0x2ac7e7fb20c8, eMode=framework::E_BEFORECLOSE) at framework/source/fwi/threadhelp/transactionmanager.cxx:98
> #5 0x00002ac7e49dfc3c in (anonymous namespace)::Frame::dispose() (this=0x2ac7e7fb2050) at framework/source/services/frame.cxx:2008
> #6 0x00002ac7e49e2cd3 in (anonymous namespace)::Frame::close(unsigned char) (this=0x2ac7e7fb2050, bDeliverOwnership=1 '\001') at framework/source/services/frame.cxx:1801
> #7 0x00002ac7bbbe25fe in SfxViewFrame::Exec_Impl(SfxRequest&) (this=0x2ac7f4691cd0, rReq=...) at sfx2/source/view/viewfrm2.cxx:260
> #8 0x00002ac7bbbcd658 in SfxStubSfxViewFrameExec_Impl(SfxShell*, SfxRequest&) (pShell=0x2ac7f4691cd0, rReq=...) at workdir/SdiTarget/sfx2/sdi/sfxslots.hxx:706
> #9 0x00002ac7bb71f792 in SfxShell::CallExec(void (*)(SfxShell*, SfxRequest&), SfxRequest&) (this=0x2ac7f4691cd0, pFunc=0x2ac7bbbcd630 <SfxStubSfxViewFrameExec_Impl(SfxShell*, SfxRequest&)>, rReq=...) at include/sfx2/shell.hxx:204
> #10 0x00002ac7bb715e41 in SfxDispatcher::Call_Impl(SfxShell&, SfxSlot const&, SfxRequest&, bool) (this=0x2ac7f40fe8e0, rShell=..., rSlot=..., rReq=..., bRecord=true) at sfx2/source/control/dispatch.cxx:262
> #11 0x00002ac7bb71b6fd in SfxDispatcher::PostMsgHandler(SfxRequest*) (this=0x2ac7f40fe8e0, pReq=0x2ac88c000cf0) at sfx2/source/control/dispatch.cxx:1085
> #12 0x00002ac7bb716698 in SfxDispatcher::LinkStubPostMsgHandler(void*, SfxRequest*) (instance=0x2ac7f40fe8e0, data=0x2ac88c000cf0) at sfx2/source/control/dispatch.cxx:1065
> #13 0x00002ac7bbabb3f8 in Link<SfxRequest*, void>::Call(SfxRequest*) const (this=0x2ac7f48361f0, data=0x2ac88c000cf0) at include/tools/link.hxx:84
> #14 0x00002ac7bbabb37b in SfxHintPoster::DoEvent_Impl(void*) (this=0x2ac7f48361e0, pPostedHint=0x2ac88c000cf0) at sfx2/source/notify/hintpost.cxx:44
> #15 0x00002ac7bbabb348 in SfxHintPoster::LinkStubDoEvent_Impl(void*, void*) (instance=0x2ac7f48361e0, data=0x2ac88c000cf0) at sfx2/source/notify/hintpost.cxx:42
> #16 0x00002ac7bfaba968 in Link<void*, void>::Call(void*) const (this=0x2ac88c00b008, data=0x2ac88c000cf0) at include/tools/link.hxx:84
> #17 0x00002ac7bfab7adc in ImplHandleUserEvent(ImplSVEvent*) (pSVEvent=0x2ac88c00b000) at vcl/source/window/winproc.cxx:1956
> #18 0x00002ac7bfab4db7 in ImplWindowFrameProc(vcl::Window*, unsigned short, void const*) (_pWindow=0x2a43020, nEvent=22, pEvent=0x2ac88c00b000) at vcl/source/window/winproc.cxx:2524
> #19 0x00002ac7c01278c9 in SalFrame::CallCallback(unsigned short, void const*) const (this=0x2a43890, nEvent=22, pEvent=0x2ac88c00b000) at vcl/inc/salframe.hxx:273
> #20 0x00002ac7c0133999 in SvpSalInstance::DoYield(bool, bool, unsigned long) (this=0x1ce1640, bWait=false, bHandleAllCurrentEvents=false, nReleased=0) at vcl/headless/svpinst.cxx:293
> #21 0x00002ac7bffa63b5 in ImplYield(bool, bool, unsigned long) (i_bWait=false, i_bAllEvents=false, nReleased=0) at vcl/source/app/svapp.cxx:509
> #22 0x00002ac7bffa1148 in Application::Yield() () at vcl/source/app/svapp.cxx:553
> #23 0x00002ac7bffa10d3 in Application::Execute() () at vcl/source/app/svapp.cxx:473
> #24 0x00002ac7b70ee229 in desktop::Desktop::DoExecute() () at desktop/source/app/app.cxx:1322
> #25 0x00002ac7b70f0304 in desktop::Desktop::Main() (this=0x7ffefac27e38) at desktop/source/app/app.cxx:1647
> #26 0x00002ac7bffb3639 in ImplSVMain() () at vcl/source/app/svmain.cxx:172
> #27 0x00002ac7bffb4e18 in SVMain() () at vcl/source/app/svmain.cxx:210
> #28 0x00002ac7b714f3b5 in soffice_main() () at desktop/source/app/sofficemain.cxx:135
> #29 0x000000000040097d in sal_main () at desktop/source/app/main.c:48
> #30 0x0000000000400957 in main (argc=8, argv=0x7ffefac27fe8) at desktop/source/app/main.c:47
Change-Id: Id06a8fcfe449f566785c51174b1ad3e81459032f
|
|
Change-Id: I87a6afeffaf7c87c6037a416783f1f22015b2fbf
|
|
At least JunitTest_framework_copmlex triggered the UBSan failure
> vcl/headless/svpgdi.cxx:924:46: runtime error: division by zero
> #0 0x2b7114500e3b in renderSource(_cairo*, SalTwoRect const&, _cairo_surface*) vcl/headless/svpgdi.cxx:924:46
> #1 0x2b711450074c in SvpSalGraphics::copySource(SalTwoRect const&, _cairo_surface*) vcl/headless/svpgdi.cxx:937:33
> #2 0x2b7114501f37 in SvpSalGraphics::copyBits(SalTwoRect const&, SalGraphics*) vcl/headless/svpgdi.cxx:980:5
> #3 0x2b7113461871 in SalGraphics::CopyBits(SalTwoRect const&, SalGraphics*, OutputDevice const*, OutputDevice const*) vcl/source/gdi/salgdilayout.cxx:529:9
> #4 0x2b711359a1fc in VirtualDevice::InnerImplSetOutputSizePixel(Size const&, bool, unsigned char*) vcl/source/gdi/virdev.cxx:352:17
> #5 0x2b711359bef6 in VirtualDevice::ImplSetOutputSizePixel(Size const&, bool, unsigned char*) vcl/source/gdi/virdev.cxx:391:9
> #6 0x2b711359edc0 in VirtualDevice::SetOutputSizePixel(Size const&, bool) vcl/source/gdi/virdev.cxx:437:12
> #7 0x2b70fa4b6f3f in sdr::overlay::OverlayManagerBuffered::ImpPrepareBufferDevice() svx/source/sdr/overlay/overlaymanagerbuffered.cxx:45:17
> #8 0x2b70fa4c0c2c in sdr::overlay::OverlayManagerBuffered::ImpSaveBackground(vcl::Region const&, OutputDevice*) svx/source/sdr/overlay/overlaymanagerbuffered.cxx:159:13
> #9 0x2b70fa4cecab in sdr::overlay::OverlayManagerBuffered::completeRedraw(vcl::Region const&, OutputDevice*) const svx/source/sdr/overlay/overlaymanagerbuffered.cxx:414:17
> #10 0x2b70fa787fc4 in SdrPaintWindow::DrawOverlay(vcl::Region const&) svx/source/svdraw/sdrpaintwindow.cxx:334:13
> #11 0x2b70fb9d388f in SdrPaintView::EndCompleteRedraw(SdrPaintWindow&, bool) svx/source/svdraw/svdpntv.cxx:753:9
> #12 0x2b70fd77da81 in FmFormView::EndCompleteRedraw(SdrPaintWindow&, bool) svx/source/form/fmview.cxx:474:5
> #13 0x2b70fb9d64a0 in SdrPaintView::EndDrawLayers(SdrPaintWindow&, bool) svx/source/svdraw/svdpntv.cxx:789:5
> #14 0x2b7182085fe9 in SwViewShell::DLPostPaint2(bool) sw/source/core/view/viewsh.cxx:240:9
> #15 0x2b71820d94c5 in SwViewShell::Paint(OutputDevice&, Rectangle const&) sw/source/core/view/viewsh.cxx:1797:21
> #16 0x2b717c26e635 in SwCursorShell::Paint(OutputDevice&, Rectangle const&) sw/source/core/crsr/crsrsh.cxx:1273:5
> #17 0x2b71839ae182 in SwEditWin::Paint(OutputDevice&, Rectangle const&) sw/source/uibase/docvw/edtwin2.cxx:475:9
> #18 0x2b71100ee7e0 in PaintHelper::DoPaint(vcl::Region const*) vcl/source/window/paint.cxx:309:13
> #19 0x2b71100ff14a in vcl::Window::ImplCallPaint(vcl::Region const*, unsigned short) vcl/source/window/paint.cxx:611:9
> #20 0x2b71100fb252 in PaintHelper::~PaintHelper() vcl/source/window/paint.cxx:549:17
> #21 0x2b71100ff463 in vcl::Window::ImplCallPaint(vcl::Region const*, unsigned short) vcl/source/window/paint.cxx:614:1
> #22 0x2b71100fb252 in PaintHelper::~PaintHelper() vcl/source/window/paint.cxx:549:17
> #23 0x2b71100ff463 in vcl::Window::ImplCallPaint(vcl::Region const*, unsigned short) vcl/source/window/paint.cxx:614:1
> #24 0x2b71100fb252 in PaintHelper::~PaintHelper() vcl/source/window/paint.cxx:549:17
> #25 0x2b71100ff463 in vcl::Window::ImplCallPaint(vcl::Region const*, unsigned short) vcl/source/window/paint.cxx:614:1
> #26 0x2b71100fb252 in PaintHelper::~PaintHelper() vcl/source/window/paint.cxx:549:17
> #27 0x2b71100ff463 in vcl::Window::ImplCallPaint(vcl::Region const*, unsigned short) vcl/source/window/paint.cxx:614:1
> #28 0x2b71100fb252 in PaintHelper::~PaintHelper() vcl/source/window/paint.cxx:549:17
> #29 0x2b71100ff463 in vcl::Window::ImplCallPaint(vcl::Region const*, unsigned short) vcl/source/window/paint.cxx:614:1
> #30 0x2b7110100536 in vcl::Window::ImplCallOverlapPaint() vcl/source/window/paint.cxx:635:9
> #31 0x2b7110102811 in vcl::Window::ImplHandlePaintHdl(Idle*) vcl/source/window/paint.cxx:667:9
> #32 0x2b7110100ee7 in vcl::Window::LinkStubImplHandlePaintHdl(void*, Idle*) vcl/source/window/paint.cxx:645:1
> #33 0x2b71101446d7 in Link<Idle*, void>::Call(Idle*) const include/tools/link.hxx:84:45
> #34 0x2b711380dff9 in Idle::Invoke() vcl/source/app/idle.cxx:25:5
> #35 0x2b711385011b in ImplSchedulerData::Invoke() vcl/source/app/scheduler.cxx:45:5
> #36 0x2b71138535e5 in Scheduler::ProcessTaskScheduling(bool) vcl/source/app/scheduler.cxx:177:9
> #37 0x2b71139a90d4 in ImplYield(bool, bool, unsigned long) vcl/source/app/svapp.cxx:521:5
> #38 0x2b7113982d83 in Application::Yield() vcl/source/app/svapp.cxx:553:5
> #39 0x2b7113982b1a in Application::Execute() vcl/source/app/svapp.cxx:473:9
> #40 0x2b70df7a4294 in desktop::Desktop::DoExecute() desktop/source/app/app.cxx:1322:5
> #41 0x2b70df7aeda3 in desktop::Desktop::Main() desktop/source/app/app.cxx:1647:17
> #42 0x2b7113a0208e in ImplSVMain() vcl/source/app/svmain.cxx:172:19
> #43 0x2b7113a0f776 in SVMain() vcl/source/app/svmain.cxx:210:16
> #44 0x2b70df9e9d01 in soffice_main desktop/source/app/sofficemain.cxx:135:12
> #45 0x4f0f0c in sal_main desktop/source/app/main.c:48:15
> #46 0x4f0ee6 in main desktop/source/app/main.c:47:1
> #47 0x2b70e137057f in __libc_start_main (/lib64/libc.so.6+0x2057f)
> #48 0x418f48 in _start (instdir/program/soffice.bin+0x418f48)
Change-Id: I2bc4abe48c129e006582b9870229f44d2d2bb1ed
|
|
At least the checkTitleNumbers(complex.XTitle.CheckXTitle) in
JunitTest_framework_complex triggered the UBSan failure
> sw/source/uibase/uiview/pview.cxx:1139:25: runtime error: downcast of address 0x61300047e500 which does not point to an object of type 'SwEditShell'
> 0x61300047e500: note: object is of type 'SwViewShell'
> d3 03 80 0d 10 f6 8e e0 fa 2a 00 00 80 b2 1b 00 90 61 00 00 80 b2 1b 00 90 61 00 00 00 00 00 00
> ^~~~~~~~~~~~~~~~~~~~~~~
> vptr for 'SwViewShell'
> #0 0x2afadd5b9594 in SwPagePreview::Init() sw/source/uibase/uiview/pview.cxx:1139:25
> #1 0x2afadd5c0e29 in SwPagePreview::SwPagePreview(SfxViewFrame*, SfxViewShell*) sw/source/uibase/uiview/pview.cxx:1251:5
> #2 0x2afadd58c7a5 in SwPagePreview::CreateInstance(SfxViewFrame*, SfxViewShell*) sw/source/uibase/uiview/pview.cxx:85:1
> #3 0x2afa4a476c8c in SfxViewFactory::CreateInstance(SfxViewFrame*, SfxViewShell*) sfx2/source/view/viewfac.cxx:28:12
> #4 0x2afa49b677a5 in SfxBaseModel::createViewController(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&) sfx2/source/doc/sfxbasemodel.cxx:4255:32
> #5 0x2afa49b6ac45 in non-virtual thunk to SfxBaseModel::createViewController(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&) sfx2/source/doc/sfxbasemodel.cxx:4217:57
> #6 0x2afa4a38bd08 in (anonymous namespace)::SfxFrameLoader_Impl::impl_createDocumentView(com::sun::star::uno::Reference<com::sun::star::frame::XModel2> const&, com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&, comphelper::NamedValueCollection const&, rtl::OUString const&) sfx2/source/view/frmload.cxx:600:50
> #7 0x2afa4a37f627 in (anonymous namespace)::SfxFrameLoader_Impl::load(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&) sfx2/source/view/frmload.cxx:728:13
> #8 0x2afac3723d1a in framework::LoadEnv::impl_loadContent() framework/source/loadenv/loadenv.cxx:1117:24
> #9 0x2afac3707b02 in framework::LoadEnv::startLoading() framework/source/loadenv/loadenv.cxx:379:20
> #10 0x2afac37007d5 in framework::LoadEnv::loadComponentFromURL(com::sun::star::uno::Reference<com::sun::star::frame::XComponentLoader> const&, com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&, rtl::OUString const&, rtl::OUString const&, int, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) framework/source/loadenv/loadenv.cxx:165:9
> #11 0x2afac396848d in (anonymous namespace)::Frame::loadComponentFromURL(rtl::OUString const&, rtl::OUString const&, int, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) framework/source/services/frame.cxx:608:12
> #12 0x2afac39a369a in non-virtual thunk to (anonymous namespace)::Frame::loadComponentFromURL(rtl::OUString const&, rtl::OUString const&, int, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) framework/source/services/frame.cxx:587:62
> #13 0x2afa4a4cdd1a in SfxViewFrame::LoadViewIntoFrame_Impl(SfxObjectShell const&, com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, unsigned short, bool) sfx2/source/view/viewfrm.cxx:1897:5
> #14 0x2afa4a501df3 in SfxViewFrame::SwitchToViewShell_Impl(unsigned short, bool) sfx2/source/view/viewfrm.cxx:2096:32
> #15 0x2afa4a4a7491 in SfxViewFrame::ExecView_Impl(SfxRequest&) sfx2/source/view/viewfrm.cxx:2181:29
> #16 0x2afa4a4a5d16 in SfxStubSfxViewFrameExecView_Impl(SfxShell*, SfxRequest&) workdir/SdiTarget/sfx2/sdi/sfxslots.hxx:709:1
> #17 0x2afa483dfe06 in SfxShell::CallExec(void (*)(SfxShell*, SfxRequest&), SfxRequest&) include/sfx2/shell.hxx:204:35
> #18 0x2afa48392c56 in SfxDispatcher::Call_Impl(SfxShell&, SfxSlot const&, SfxRequest&, bool) sfx2/source/control/dispatch.cxx:262:13
> #19 0x2afa483bf830 in SfxDispatcher::PostMsgHandler(SfxRequest*) sfx2/source/control/dispatch.cxx:1085:17
> #20 0x2afa48398545 in SfxDispatcher::LinkStubPostMsgHandler(void*, SfxRequest*) sfx2/source/control/dispatch.cxx:1065:1
> #21 0x2afa49d320a7 in Link<SfxRequest*, void>::Call(SfxRequest*) const include/tools/link.hxx:84:45
> #22 0x2afa49d31b50 in SfxHintPoster::DoEvent_Impl(void*) sfx2/source/notify/hintpost.cxx:44:5
> #23 0x2afa49d319e5 in SfxHintPoster::LinkStubDoEvent_Impl(void*, void*) sfx2/source/notify/hintpost.cxx:42:1
> #24 0x2afa69f03327 in Link<void*, void>::Call(void*) const include/tools/link.hxx:84:45
> #25 0x2afa69eec39f in ImplHandleUserEvent(ImplSVEvent*) vcl/source/window/winproc.cxx:1959:13
> #26 0x2afa69ed7183 in ImplWindowFrameProc(vcl::Window*, unsigned short, void const*) vcl/source/window/winproc.cxx:2527:13
> #27 0x2afa6cf9a0f9 in SalFrame::CallCallback(unsigned short, void const*) const vcl/inc/salframe.hxx:273:33
> #28 0x2afa6cff0a85 in SvpSalInstance::DoYield(bool, bool, unsigned long) vcl/headless/svpinst.cxx:293:17
> #29 0x2afa6c484a64 in ImplYield(bool, bool, unsigned long) vcl/source/app/svapp.cxx:509:9
> #30 0x2afa6c45ed83 in Application::Yield() vcl/source/app/svapp.cxx:553:5
> #31 0x2afa6c45eb1a in Application::Execute() vcl/source/app/svapp.cxx:473:9
> #32 0x2afa38280294 in desktop::Desktop::DoExecute() desktop/source/app/app.cxx:1322:5
> #33 0x2afa3828ada3 in desktop::Desktop::Main() desktop/source/app/app.cxx:1647:17
> #34 0x2afa6c4de08e in ImplSVMain() vcl/source/app/svmain.cxx:172:19
> #35 0x2afa6c4eb776 in SVMain() vcl/source/app/svmain.cxx:210:16
> #36 0x2afa384c5d01 in soffice_main desktop/source/app/sofficemain.cxx:135:12
> #37 0x4f0f0c in sal_main desktop/source/app/main.c:48:15
> #38 0x4f0ee6 in main desktop/source/app/main.c:47:1
> #39 0x2afa39e4c57f in __libc_start_main (/lib64/libc.so.6+0x2057f)
> #40 0x418f48 in _start (instdir/program/soffice.bin+0x418f48)
Change-Id: I4a32bcf4dea4616d4726c28ba01adba9083ad1c6
|
|
...the test often fails with the assertNotNull in prepareQueryAndDispatch
firing, suggesting there's a race in getting the dispatch processed before
proceeding
Change-Id: Ib338d761df638a0c5d53777352cfe7519742112b
|
|
Change-Id: I4c76a7d3f5a209578b5a7c230fbbcdea2ec47ae0
|
|
Change-Id: I2c83911433a8f89e7366d9f7711ca4879e44bae9
|
|
... which is surprising, but means that these arguments are too small.
Change-Id: I9c58e7fefa30d19c701df4f04043ddb474b28986
|
|
For a VirtualDevice only scalable fonts are cloned, but for non-scalable
bitmap fonts still an empty PhysicalFontFamily with no PhysicalFontFace
is created, which causes text to disappear (height 0).
Suppress creation of such families like it was done in LO 4.3, so that
the fall-back can handle it and map "Courier" to "Courier New".
(regression from 8d6697587776136f3121733e1c29d4200720dbd9)
Change-Id: I6542a3f7a01bdf46ae2bcf328fa04064f7f86332
|
|
Change-Id: I1f439382dd11a4082cce20e410ecdbcdab31adb9
|
|
Image flipping can be processed following different code paths in bitmap.cxx.
Has been verified that it was broken in Linux Mint (with cinnamon) because
there a buggy code path was chosen which was not fixed
in commit 3119440a80282692640378fde5e37974ab63f096 in master.
This commit solves the problem for this code path
Change-Id: I22257e70761ca5469c0424b5f9925681cfd4e2e3
Reviewed-on: https://gerrit.libreoffice.org/22753
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Jacobo Aragunde Pérez <jaragunde@igalia.com>
|
|
Change-Id: I1420d92d7e5ea229b7c1a8d11fa30111ffb62557
|
|
Change-Id: I66c866815501f185de4c3ac7296ef42f1a1ab025
|
|
Change-Id: I77f7b555d17de761d65c4ef3ccc8a502800998f5
|
|
Change-Id: I47d4ffe68f09156987e545511be469991dd6105d
|
|
Change-Id: I7101ca70418d4d33b0dfbbd2ba6753b6891d7c3c
|
|
The panel is not visible for 2 years now, so remove the code too.
Change-Id: Id02de5fb1fda471763b2aac893ef7d0fc61ef1c0
|
|
Change-Id: I9e6a44fb54484aebc3f223b3c71d2de18bb5d553
|
|
Change-Id: I22ac9714e59d6bc95ef739fff4832799a2f61bbc
|
|
Commit 4215bca95511af8e4ee96e3c8f521b35f638aef3 (export 'Chapter' field
type as 'StyleRef' into .doc, 2015-08-21) mapped SwChapterField to
STYLEREF in the DOC export. This field type was handled as a field mark
on import. Instead of always handling it as a field mark, recognize the
case when it's the subset we write and we can handle natively, and in
that case create an SwChapterField again on import.
Leave the complex case unchanged as before and keep using field marks
for that.
Change-Id: Icfa8c4be6538da5e02e2d5071af30a46ccfa712b
|
|
Change-Id: I18ebddef41955948fd4528ae74f4fe9c7439d53b
|
|
Change-Id: I56dfbda84e000d974a9dd0644b3dbc2963d3e353
|
|
Change-Id: I2f8dc470100e91841eebbe1e3b02a3d31ab3a535
|
|
Change-Id: Ibba1a36d4f3744fa68f7e9d0076c997e076262cb
|
|
Change-Id: I75d808dd3a42e57e7f55bad97e24fef65bb62dc6
|
|
Change-Id: I3fbc7cb107bdab770d5ce9ed3ecddb962d2d4666
|
|
Obsoletes our xmlsec1-1.2.14-ansi.patch.1 and xmlsec1-android.patch.1.
Change-Id: Ic6499b1a79e3f5a6d94beb62c0c338789c782c86
Reviewed-on: https://gerrit.libreoffice.org/23844
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
|
|
thousand separator and 3 digits (eg. +,123) are imported as a number
Do not allow numbers parsed from CVS files when "Detect special numbers" is
off, to contain thousand separators before digits, even if after a +/- sign
(eg. -,123 or +,789). Treat these as strings instead.
Also added unit tests for this.
Patch by: me
(cherry picked from commit 10458a24f4e6cc311e65fb80ce576fed39937be2)
Change-Id: Ic946fc6a11326861f238157ddb651bc5a5b28edd
|
|
lets try and treat these the same as we do normal toplevels
like dialogs if they popup with GrabFocus.
This way focus can be set on widgets inside the floating windows, and
so keyboard traversal of widgets etc all works.
Change-Id: If447429756cf5d136b9c2e2f62fafb37c167b1ce
|
|
Change-Id: I39e8bfd89538c36c97afb3e4e86c3ba9156274e0
|
|
... which consist of only C4 or C[3] without a range operator.
Change-Id: I1865f0ec4c4fec1101b93b6b40d6f26871a65f07
|
|
Change-Id: I1a6cc78025790fa22e91ae91dda5644bdc384ca3
|
|
Change-Id: I2f4c34de154aa71db721dc30da29173d6c37709f
|
|
Do not send title changed event if the source of the event is null.
This case can occur in multi-threaded scenario where one thread calls
disposing while some other thread calls impl_sendTitleChangedEvent().
Change-Id: I86a65824ab5c60a3fd8d3fb323f6d78944b57a23
Reviewed-on: https://gerrit.libreoffice.org/23736
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
|
|
Change-Id: I7ee117fcc5538ab9bc92cd30fd0f61e52a5a93bd
|
|
Change-Id: Ice9fef5bdfd3e993b1b2ba035cbc971b8dacbe3a
|
|
Added several unit tests for the XTitle interface.
Tests are for bugs tdf#96044,tdf#98837,tdf#96896
Change-Id: I9b3990dff02d5d5738024b60e94555199b625a2e
Reviewed-on: https://gerrit.libreoffice.org/23834
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
...as it causes ~RequestHandler to be called with mIpcThread still running,
triggering the assert in ~RequestHandler and keeping the thread potentially
still running during exit.
The odd SalMainPipeExchangeSignal_impl acting upong just SIGTERM (instead of
turning off the IPC thread early for each invocation of LO's signal handler,
say) is effectively like that ever since
ee3351d78c9b6ffbc4dfe62853e81b84e65879c7 "#89023# splash screen optimization";
just change it to use RequestHandler::SetDowning instead.
Change-Id: I238476706c2463130a6ede64a062d46af953ba6f
|
|
Change-Id: I094b4a1c89676426b286f72a2f510e48fed98b3b
|
|
Make TitleHelper listen for controller events.
When the controller disposes, it calls the disposing method and releases its
leased number. Direct cast to XEventListener is ambiguous, so upcasting
path has been defined.
This commit depends on the commit f80de31099be1ba7c6f753187f6703a915151c27
Change-Id: I79d859edf8e66ae6e777ba8e8d6c9d1dac4048e1
Reviewed-on: https://gerrit.libreoffice.org/23722
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: Iea54c59393c7c2955ec5fa321d9e9ea7b57b198a
Reviewed-on: https://gerrit.libreoffice.org/23831
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Oliver Specht <oliver.specht@cib.de>
|
|
I replaced the occurences of OSL_DEBUG_LEVEL > 1 with the debug
macro DEBUG_{module}_{area}.
Change-Id: Ibbf7345d3dc43354ff80a8ceafb4a812749513c7
Reviewed-on: https://gerrit.libreoffice.org/22355
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Björn Michaelsen <bjoern.michaelsen@canonical.com>
|
|
I disentangled my previous patch and uploaded one patch
per module
Change-Id: Ic7351452833816358cff96e154d6d5d40f094aa8
Reviewed-on: https://gerrit.libreoffice.org/22666
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Björn Michaelsen <bjoern.michaelsen@canonical.com>
|
|
Change-Id: I9adcf4516107aaa960463be13090c2ac15685e09
Reviewed-on: https://gerrit.libreoffice.org/23833
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
|
|
Change-Id: I821ed77a6c6014c9a82d31a4b117ed6f1b4abf18
Reviewed-on: https://gerrit.libreoffice.org/23832
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
|
|
Change-Id: I6c1910aeb2866d9646f1ea8e53dbd7a8a351a49d
|
|
I blindly replaced OSL_DEBUG_LEVEL > 1 conditionals to OSL_DEBUG_LEVEL > 0
as suggested in the easy hack
Change-Id: Iac829aa648fd0bd5d170e92a72809a2078e1f020
Reviewed-on: https://gerrit.libreoffice.org/23066
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Björn Michaelsen <bjoern.michaelsen@canonical.com>
|
|
Change-Id: I4a5ef736ad714dd3b1beb4054e2347973db70e39
Reviewed-on: https://gerrit.libreoffice.org/23704
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
|