summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-04-06Avoid reserved identifiersStephan Bergmann
Change-Id: I0505cf418688d568c0c110bc70b2552e2fb8265c
2016-04-06...and ignore DisposedException from multiple Frame::closeStephan Bergmann
...follow-up to d2a59bb53ab6c6a364538bdc6928420d8cf72ba0 "Avoid deadlock when two threads call into Frame::close" Change-Id: I26fae3fffce683888805efcc450065c3737ec3c5
2016-04-06Avoid deadlock when two threads call into Frame::closeStephan Bergmann
...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
2016-04-06Avoid reserved identifierStephan Bergmann
Change-Id: I87a6afeffaf7c87c6037a416783f1f22015b2fbf
2016-04-06Avoid division by zeroStephan Bergmann
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
2016-04-06Avoid bad downcast from SwViewShell to SwEditShellStephan Bergmann
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
2016-04-06See if waitForEventIdle helps hereStephan Bergmann
...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
2016-04-06Avoid reserved identifiersStephan Bergmann
Change-Id: I4c76a7d3f5a209578b5a7c230fbbcdea2ec47ae0
2016-04-06Avoid reserved identifiersStephan Bergmann
Change-Id: I2c83911433a8f89e7366d9f7711ca4879e44bae9
2016-04-06vcl: lstrcpynW actually takes length *including* null terminatorMichael Stahl
... which is surprising, but means that these arguments are too small. Change-Id: I9c58e7fefa30d19c701df4f04043ddb474b28986
2016-04-06tdf#98989: vcl: fix handling of non-scalable fonts like "Courier"Michael Stahl
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
2016-04-06sw: fix typoMichael Stahl
Change-Id: I1f439382dd11a4082cce20e410ecdbcdab31adb9
2016-04-06tdf#90319: make image flipping work when aLinearContext(...) code path chosenpasqualm
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>
2016-04-06tdf#99110 translate currency for ukDavid Tardon
Change-Id: I1420d92d7e5ea229b7c1a8d11fa30111ffb62557
2016-04-06tdf#99110 translate reserved words for ukDavid Tardon
Change-Id: I66c866815501f185de4c3ac7296ef42f1a1ab025
2016-04-06tdf#99110 add genitive cases for months for ukDavid Tardon
Change-Id: I77f7b555d17de761d65c4ef3ccc8a502800998f5
2016-04-06SidebarToolBox: Remove unused param.Jan Holesovsky
Change-Id: I47d4ffe68f09156987e545511be469991dd6105d
2016-04-06SidebarToolBox: This function was needed only for InsertPropertyPanel.Jan Holesovsky
Change-Id: I7101ca70418d4d33b0dfbbd2ba6753b6891d7c3c
2016-04-06tdf#73070 follow-up: Remove also the InsertPropertyPanel code.Jan Holesovsky
The panel is not visible for 2 years now, so remove the code too. Change-Id: Id02de5fb1fda471763b2aac893ef7d0fc61ef1c0
2016-04-06-Werror,-Winconsistent-missing-overrideStephan Bergmann
Change-Id: I9e6a44fb54484aebc3f223b3c71d2de18bb5d553
2016-04-06-Werror,-Wunused-variableStephan Bergmann
Change-Id: I22ac9714e59d6bc95ef739fff4832799a2f61bbc
2016-04-06tdf#99100 DOC import: handle subset of STYLEREF nativelyMiklos Vajna
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
2016-04-06Avoid reserved identifiersStephan Bergmann
Change-Id: I18ebddef41955948fd4528ae74f4fe9c7439d53b
2016-04-06Avoid reserved identifierStephan Bergmann
Change-Id: I56dfbda84e000d974a9dd0644b3dbc2963d3e353
2016-04-06Avoid reserved identifierStephan Bergmann
Change-Id: I2f8dc470100e91841eebbe1e3b02a3d31ab3a535
2016-04-06Avoid reserved identifiersStephan Bergmann
Change-Id: Ibba1a36d4f3744fa68f7e9d0076c997e076262cb
2016-04-06Turn SbiOpcode into scoped enumStephan Bergmann
Change-Id: I75d808dd3a42e57e7f55bad97e24fef65bb62dc6
2016-04-06Avoid reserved identifiersStephan Bergmann
Change-Id: I3fbc7cb107bdab770d5ce9ed3ecddb962d2d4666
2016-04-06Upgrade libxmlsec to 1.2.19Miklos Vajna
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>
2016-04-05Resolves: #i126901# CSV import: values with + or - followed by...Damjan Jovanovic
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
2016-04-05Resolves; tdf#87120 no keyboard navigation inside floating windowsCaolán McNamara
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
2016-04-05convert src line width popup to .ui formatCaolán McNamara
Change-Id: I39e8bfd89538c36c97afb3e4e86c3ba9156274e0
2016-04-05Resolves: tdf#98990 accept R1C1 notation entire column/row referencesEike Rathke
... which consist of only C4 or C[3] without a range operator. Change-Id: I1865f0ec4c4fec1101b93b6b40d6f26871a65f07
2016-04-05Values read from the Windows registry shouldn't be assert'edStephan Bergmann
Change-Id: I1a6cc78025790fa22e91ae91dda5644bdc384ca3
2016-04-05These are SAL_INFO, at bestStephan Bergmann
Change-Id: I2f4c34de154aa71db721dc30da29173d6c37709f
2016-04-05Prevent broadcast of title change events without a sourceakash
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>
2016-04-05m_dbg_bMakeItFaster is always falseStephan Bergmann
Change-Id: I7ee117fcc5538ab9bc92cd30fd0f61e52a5a93bd
2016-04-05-fsanitize=nonnull-attributeStephan Bergmann
Change-Id: Ice9fef5bdfd3e993b1b2ba035cbc971b8dacbe3a
2016-04-05Add unit tests for XTitle interfaceAkash Jain
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>
2016-04-05RequestHandler::Disable(join = false) is problematicStephan Bergmann
...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
2016-04-05Missing includeStephan Bergmann
Change-Id: I094b4a1c89676426b286f72a2f510e48fed98b3b
2016-04-05tdf#96044 - After exiting print preview main window number bumps to #3akash
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>
2016-04-05headless build: reset ENABLE_GLTF and use that setting as beforeOliver Specht
Change-Id: Iea54c59393c7c2955ec5fa321d9e9ea7b57b198a Reviewed-on: https://gerrit.libreoffice.org/23831 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Oliver Specht <oliver.specht@cib.de>
2016-04-05tdf#91794 OSL_DEBUG_LEVEL > 1 removed in libo/filter moduleRohan Kumar
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>
2016-04-05tdf#91794 remove OSL_DEBUG_LEVEL > 1 conditionalsRohan Kumar
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>
2016-04-05loplugin:constantparam in chart2Noel Grandin
Change-Id: I9adcf4516107aaa960463be13090c2ac15685e09 Reviewed-on: https://gerrit.libreoffice.org/23833 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-04-05loplugin:constantparamNoel Grandin
Change-Id: I821ed77a6c6014c9a82d31a4b117ed6f1b4abf18 Reviewed-on: https://gerrit.libreoffice.org/23832 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-04-05loplugin:salboolStephan Bergmann
Change-Id: I6c1910aeb2866d9646f1ea8e53dbd7a8a351a49d
2016-04-05tdf#91794 remove OSL_DEBUG_LEVEL > 1 conditionalsRohan Kumar
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>
2016-04-05Allow NSS to build under cp950 in windows.Mark Hung
Change-Id: I4a5ef736ad714dd3b1beb4054e2347973db70e39 Reviewed-on: https://gerrit.libreoffice.org/23704 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>