core.git: sc/source
sc/source/ui/Accessibility/AccessibleDocument.cxx |4 +- sc/source/ui/drawfunc/drawsh.cxx | 17 +++- sc/source/ui/drawfunc/drawsh2.cxx |5 ++- sc/source/ui/drawfunc/drawsh5.cxx | 10 --- sc/source/ui/drawfunc/fuconstr.cxx| 12 sc/source/ui/drawfunc/fudraw.cxx | 31 +- sc/source/ui/drawfunc/fuins1.cxx |5 ++- sc/source/ui/drawfunc/fupoor.cxx |4 +- sc/source/ui/drawfunc/fusel.cxx | 14 - sc/source/ui/drawfunc/futext.cxx | 15 -- sc/source/ui/drawfunc/graphsh.cxx |8 ++--- sc/source/ui/view/cliputil.cxx| 12 +--- sc/source/ui/view/drawvie3.cxx| 24 - sc/source/ui/view/drawvie4.cxx|4 +- sc/source/ui/view/drawview.cxx| 13 - sc/source/ui/view/gridwin.cxx |5 ++- sc/source/ui/view/gridwin3.cxx|8 +++-- sc/source/ui/view/tabvwsh2.cxx|9 +++--- sc/source/ui/view/tabvwshb.cxx| 20 +++--- sc/source/ui/view/viewfun7.cxx|8 ++--- 20 files changed, 122 insertions(+), 106 deletions(-) New commits: commit 049dd8300b1b5f97612e18ec2ef893645a38b9fa Author: Xisco Fauli AuthorDate: Fri May 31 10:12:33 2024 +0200 Commit: Xisco Fauli CommitDate: Fri May 31 13:57:49 2024 +0200 sc: Reduce number of calls to GetMarkedObjectList() From 152 to 102 Change-Id: I43907965e5b1ef0819495d6a1e7b18597a1b5947 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168283 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/sc/source/ui/Accessibility/AccessibleDocument.cxx b/sc/source/ui/Accessibility/AccessibleDocument.cxx index 12b8d8c88014..94909b4fa21f 100644 --- a/sc/source/ui/Accessibility/AccessibleDocument.cxx +++ b/sc/source/ui/Accessibility/AccessibleDocument.cxx @@ -1007,9 +1007,9 @@ bool ScChildrenShapes::FindSelectedShapesChanges(const uno::ReferenceGetViewData().GetScDrawView(); if( pScDrawView ) { -if( pScDrawView->GetMarkedObjectList().GetMarkCount() == 1 ) +pMarkList = &(pScDrawView->GetMarkedObjectList()); +if( pMarkList->GetMarkCount() == 1 ) { -pMarkList = &(pScDrawView->GetMarkedObjectList()); pMarkedObj = pMarkList->GetMark(0)->GetMarkedSdrObj(); uno::Reference< drawing::XShape > xMarkedXShape (pMarkedObj->getUnoShape(), uno::UNO_QUERY); if( aFocusedItr != aDataEndItr && diff --git a/sc/source/ui/drawfunc/drawsh.cxx b/sc/source/ui/drawfunc/drawsh.cxx index 68f277a1756c..2e11d3817ee5 100644 --- a/sc/source/ui/drawfunc/drawsh.cxx +++ b/sc/source/ui/drawfunc/drawsh.cxx @@ -255,7 +255,7 @@ void ScDrawShell::ExecDrawAttr( SfxRequest& rReq ) } -if( pView->GetMarkedObjectList().GetMarkCount() != 0 ) +if( rMarkList.GetMarkCount() != 0 ) { std::unique_ptr pNewArgs = rReq.GetArgs()->Clone(); lcl_convertStringArguments(*pNewArgs); @@ -327,7 +327,7 @@ void ScDrawShell::ExecDrawAttr( SfxRequest& rReq ) case SID_ATTR_TRANSFORM: { -if ( pView->GetMarkedObjectList().GetMarkCount() != 0 ) +if ( rMarkList.GetMarkCount() != 0 ) { const SfxItemSet* pArgs = rReq.GetArgs(); @@ -476,9 +476,9 @@ void ScDrawShell::ExecuteMacroAssign(SdrObject* pObj, weld::Window* pWin) void ScDrawShell::ExecuteLineDlg( const SfxRequest& rReq ) { ScDrawView* pView = rViewData.GetScDrawView(); -boolbHasMarked = pView->GetMarkedObjectList().GetMarkCount() != 0; +const SdrMarkList& rMarkList = pView->GetMarkedObjectList(); +boolbHasMarked = rMarkList.GetMarkCount() != 0; const SdrObject*pObj= nullptr; -const SdrMarkList& rMarkList = pView->GetMarkedObjectList(); std::shared_ptr xRequest = std::make_shared(rReq); @@ -514,7 +514,8 @@ void ScDrawShell::ExecuteLineDlg( const SfxRequest& rReq ) void ScDrawShell::ExecuteAreaDlg( const SfxRequest& rReq ) { ScDrawView* pView = rViewData.GetScDrawView(); -boolbHasMarked = pView->GetMarkedObjectList().GetMarkCount() != 0; +const SdrMarkList& rMarkList = pView->GetMarkedObjectList(); +boolbHasMarked = rMarkList.GetMarkCount() != 0; std::shared_ptr xRequest = std::make_shared(rReq); @@ -546,7 +547,8 @@ void ScDrawShell::ExecuteAreaDlg( const SfxRequest& rReq ) void ScDrawShell::Execut
core.git: 2 commits - sd/source svx/source
sd/source/ui/dlg/tpaction.cxx|4 sd/source/ui/func/fuconstr.cxx | 10 + sd/source/ui/func/fucopy.cxx | 14 +- sd/source/ui/func/fudraw.cxx | 17 +-- sd/source/ui/func/fuediglu.cxx |3 sd/source/ui/func/fuinsert.cxx |4 sd/source/ui/func/fuline.cxx |2 sd/source/ui/func/fumorph.cxx|2 sd/source/ui/func/fupoor.cxx |7 - sd/source/ui/func/fusel.cxx | 19 ++- sd/source/ui/func/futempl.cxx|3 sd/source/ui/func/futext.cxx | 16 +-- sd/source/ui/func/futhes.cxx |5 sd/source/ui/func/futransf.cxx |7 - sd/source/ui/func/fuvect.cxx |2 sd/source/ui/func/smarttag.cxx |3 sd/source/ui/view/Outliner.cxx |7 - sd/source/ui/view/drawview.cxx |5 sd/source/ui/view/drbezob.cxx|5 sd/source/ui/view/drviews1.cxx | 10 - sd/source/ui/view/drviews2.cxx | 27 + sd/source/ui/view/drviews3.cxx | 12 -- sd/source/ui/view/drviews4.cxx | 16 +-- sd/source/ui/view/drviews6.cxx |7 - sd/source/ui/view/drviews7.cxx | 13 +- sd/source/ui/view/drviews8.cxx |4 sd/source/ui/view/drviews9.cxx |7 - sd/source/ui/view/drviewsa.cxx |6 - sd/source/ui/view/drviewse.cxx | 17 +-- sd/source/ui/view/drviewsf.cxx | 22 ++-- sd/source/ui/view/drviewsg.cxx |3 sd/source/ui/view/sdview.cxx | 18 ++- sd/source/ui/view/sdview2.cxx| 34 +++--- sd/source/ui/view/sdview3.cxx|7 - sd/source/ui/view/sdview5.cxx|6 - sd/source/ui/view/viewoverlaymanager.cxx |3 sd/source/ui/view/viewshe3.cxx |3 sd/source/ui/view/viewshel.cxx |5 svx/source/dialog/graphctl.cxx |6 - svx/source/dialog/imapwnd.cxx|2 svx/source/engine3d/view3d.cxx | 89 +--- svx/source/engine3d/view3d1.cxx |9 - svx/source/svdraw/svddrgmt.cxx | 40 --- svx/source/svdraw/svddrgv.cxx| 30 +++-- svx/source/svdraw/svdedtv.cxx| 37 +++ svx/source/svdraw/svdedtv1.cxx | 132 ++--- svx/source/svdraw/svdedtv2.cxx | 163 --- svx/source/svdraw/svdedxv.cxx| 14 +- svx/source/svdraw/svdglev.cxx| 40 --- svx/source/svdraw/svdmrkv.cxx| 148 svx/source/svdraw/svdmrkv1.cxx | 77 -- svx/source/svdraw/svdpoev.cxx| 70 +++-- svx/source/svdraw/svdundo.cxx| 12 +- svx/source/svdraw/svdview.cxx| 32 +++--- svx/source/svdraw/svdxcgv.cxx| 33 +++--- 55 files changed, 733 insertions(+), 556 deletions(-) New commits: commit 5da4acd4818741c3b68be211bd7a21e4c080ed4d Author: Xisco Fauli AuthorDate: Thu May 30 13:39:31 2024 +0200 Commit: Xisco Fauli CommitDate: Fri May 31 09:25:03 2024 +0200 sd: Reduce number of calls to GetMarkedObjectList() From 211 to 129 Change-Id: I2ccb4261f5f842e7f1514bc0c8eab2591ead173e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168256 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/sd/source/ui/dlg/tpaction.cxx b/sd/source/ui/dlg/tpaction.cxx index f79005b7ef1d..3d0f391edc17 100644 --- a/sd/source/ui/dlg/tpaction.cxx +++ b/sd/source/ui/dlg/tpaction.cxx @@ -157,9 +157,9 @@ void SdTPAction::Construct() SdrGrafObj* pGrafObj = nullptr; boolbOLEAction = false; -if ( mpView->GetMarkedObjectList().GetMarkCount() != 0 ) +const SdrMarkList& rMarkList = mpView->GetMarkedObjectList(); +if ( rMarkList.GetMarkCount() != 0 ) { -const SdrMarkList& rMarkList = mpView->GetMarkedObjectList(); if (rMarkList.GetMarkCount() == 1) { SdrMark* pMark = rMarkList.GetMark(0); diff --git a/sd/source/ui/func/fuconstr.cxx b/sd/source/ui/func/fuconstr.cxx index b5e4b1b15bb0..01f56174980d 100644 --- a/sd/source/ui/func/fuconstr.cxx +++ b/sd/source/ui/func/fuconstr.cxx @@ -85,13 +85,14 @@ bool FuConstruct::MouseButtonDown(const MouseEvent& rMEvt) SdrHdl* pHdl = mpView->PickHandle(aMDPos); +const SdrMarkList& rMarkList = mpView->GetMarkedObjectList(); if ( pHdl != nullptr || mpView->IsMarkedHit(aMDPos, nHitLog) ) { sal_uInt16 nDrgLog = sal_uInt16 ( mpWindow->PixelToLogic(Size(mpView->GetDragThresholdPixels(),0)).Width() ); mpView->BegDragObj(aMDPos, nullptr, pHdl, nDrgLog); bReturn = true; } -else if ( mpView->GetMarkedObjectList().GetMarkCount() != 0 ) +
core.git: sd/source
sd/source/ui/inc/drawview.hxx |1 - sd/source/ui/view/drawview.cxx |3 +-- 2 files changed, 1 insertion(+), 3 deletions(-) New commits: commit 010551e5c1277ed32e8b279660c27490bace0767 Author: Xisco Fauli AuthorDate: Thu May 30 14:27:52 2024 +0200 Commit: Xisco Fauli CommitDate: Thu May 30 22:53:38 2024 +0200 sd: drop mpDocShell from DrawView ::sd::View already has mpDocSh Change-Id: I77af258115fad54aab6120f0dbbaa72a1faa71a4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168261 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/sd/source/ui/inc/drawview.hxx b/sd/source/ui/inc/drawview.hxx index d5790c42458b..37d8f79f4c7c 100644 --- a/sd/source/ui/inc/drawview.hxx +++ b/sd/source/ui/inc/drawview.hxx @@ -61,7 +61,6 @@ protected: virtual void ModelHasChanged() override; private: -DrawDocShell* mpDocShell; DrawViewShell* mpDrawViewShell; sal_uInt16 mnPOCHSmph; ///< for blocking PageOrderChangedHint diff --git a/sd/source/ui/view/drawview.cxx b/sd/source/ui/view/drawview.cxx index 7d6a492146ff..6880f83e2cd0 100644 --- a/sd/source/ui/view/drawview.cxx +++ b/sd/source/ui/view/drawview.cxx @@ -62,7 +62,6 @@ DrawView::DrawView( OutputDevice* pOutDev, DrawViewShell* pShell) : ::sd::View(*pDocSh->GetDoc(), pOutDev, pShell) -,mpDocShell(pDocSh) ,mpDrawViewShell(pShell) ,mnPOCHSmph(0) { @@ -491,7 +490,7 @@ bool DrawView::SetStyleSheet(SfxStyleSheet* pStyleSheet, bool bDontRemoveHardAtt void DrawView::CompleteRedraw(OutputDevice* pOutDev, const vcl::Region& rReg, sdr::contact::ViewObjectContactRedirector* pRedirector /*=0*/) { -SdDrawDocument* pDoc = mpDocShell->GetDoc(); +SdDrawDocument* pDoc = GetDocSh()->GetDoc(); if( pDoc && pDoc->GetDocumentType() == DocumentType::Impress) { rtl::Reference< sd::SlideShow > xSlideshow( SlideShow::GetSlideShow( pDoc ) );
Re: ESC meeting minutes: 2024-05-30
Hello, On 30/5/24 16:52, Miklos Vajna wrote: + RTL/CTL/CJK update (Jonathan) + tdf#81272: Slow CJK rendering due to font fallback + Per layout: O(nlogn) -> O(n) + tdf#161145: CJK characters have extra spacing since LO 7 + Regression causing CJK characters to overflow cells on certain docx + Currently investigating to compare behavior against MSO + results from the vcl-level text layout changes? + will check (Xisco) + what doc corpus do you use? (Miklos) + a subset (Xisco) + not sure about the size off the top of the head * docx: 2431 files * doc: 1006 files * rtf: 1006 files * ppt: 422 files * pptx: 1131 files -- Xisco Faulí LibreOffice QA Team IRC: x1sc0
core.git: basctl/source chart2/source cui/source include/svx reportdesign/source sc/qa sc/source sd/source svx/source sw/source
/feshview.cxx |2 - sw/source/core/frmedt/fews.cxx |6 ++-- sw/source/uibase/dialog/SwSpellDialogChildWindow.cxx |2 - sw/source/uibase/docvw/edtwin.cxx| 12 - sw/source/uibase/shells/drawdlg.cxx | 12 - sw/source/uibase/shells/drwbassh.cxx |4 +-- sw/source/uibase/shells/drwtxtsh.cxx |4 +-- sw/source/uibase/uiview/formatclipboard.cxx |2 - sw/source/uibase/uiview/view2.cxx|2 - 81 files changed, 189 insertions(+), 188 deletions(-) New commits: commit 322a6ca8f912513f69747a68fe5497ee6b643293 Author: Xisco Fauli AuthorDate: Wed May 29 13:49:41 2024 +0200 Commit: Xisco Fauli CommitDate: Thu May 30 08:44:37 2024 +0200 AreObjectsMarked -> GetMarkedObjectList().GetMarkCount() != 0 In order to reduce number of calls to GetMarkedObjectList() later on Change-Id: Ib2eb7c88338e64744f886a338acca65f782f8170 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168218 Tested-by: Jenkins Tested-by: Xisco Fauli Reviewed-by: Xisco Fauli diff --git a/basctl/source/basicide/baside3.cxx b/basctl/source/basicide/baside3.cxx index ea4fcb4c33de..1d8660ee8289 100644 --- a/basctl/source/basicide/baside3.cxx +++ b/basctl/source/basicide/baside3.cxx @@ -204,7 +204,7 @@ void DialogWindow::Command( const CommandEvent& rCEvt ) if (GetDispatcher()) { SdrView& rView = GetView(); -if( !rCEvt.IsMouseEvent() && rView.AreObjectsMarked() ) +if( !rCEvt.IsMouseEvent() && rView.GetMarkedObjectList().GetMarkCount() != 0 ) { tools::Rectangle aMarkedRect( rView.GetMarkedRect() ); Point MarkedCenter( aMarkedRect.Center() ); @@ -271,7 +271,7 @@ void DialogWindow::GetState( SfxItemSet& rSet ) case SID_COPY: { // any object selected? -if ( !m_pEditor->GetView().AreObjectsMarked() ) +if ( m_pEditor->GetView().GetMarkedObjectList().GetMarkCount() == 0 ) rSet.DisableItem( nWh ); } break; @@ -280,7 +280,7 @@ void DialogWindow::GetState( SfxItemSet& rSet ) case SID_BACKSPACE: { // any object selected? -if ( !m_pEditor->GetView().AreObjectsMarked() ) +if ( m_pEditor->GetView().GetMarkedObjectList().GetMarkCount() == 0 ) rSet.DisableItem( nWh ); if ( IsReadOnly() ) @@ -314,7 +314,7 @@ void DialogWindow::GetState( SfxItemSet& rSet ) { Shell* pShell = GetShell(); SfxViewFrame* pViewFrame = pShell ? >GetViewFrame() : nullptr; -if ( pViewFrame && !pViewFrame->HasChildWindow( SID_SHOW_PROPERTYBROWSER ) && !m_pEditor->GetView().AreObjectsMarked() ) +if ( pViewFrame && !pViewFrame->HasChildWindow( SID_SHOW_PROPERTYBROWSER ) && m_pEditor->GetView().GetMarkedObjectList().GetMarkCount() == 0 ) rSet.DisableItem( nWh ); if ( IsReadOnly() ) diff --git a/basctl/source/dlged/dlged.cxx b/basctl/source/dlged/dlged.cxx index abdc662802d8..c1e9a28b2c61 100644 --- a/basctl/source/dlged/dlged.cxx +++ b/basctl/source/dlged/dlged.cxx @@ -641,7 +641,7 @@ static void implCopyStreamToByteSequence( const Reference< XInputStream >& xStre void DlgEditor::Copy() { -if( !pDlgEdView->AreObjectsMarked() ) +if( pDlgEdView->GetMarkedObjectList().GetMarkCount() == 0 ) return; // stop all drawing actions @@ -959,7 +959,7 @@ void DlgEditor::Paste() void DlgEditor::Delete() { -if( !pDlgEdView->AreObjectsMarked() ) +if( pDlgEdView->GetMarkedObjectList().GetMarkCount() == 0 ) return; // remove control models of marked objects from dialog model diff --git a/basctl/source/dlged/dlgedfunc.cxx b/basctl/source/dlged/dlgedfunc.cxx index 7f1a0388eeaa..719814933d6e 100644 --- a/basctl/source/dlged/dlgedfunc.cxx +++ b/basctl/source/dlged/dlgedfunc.cxx @@ -120,7 +120,7 @@ bool DlgEdFunc::KeyInput( const KeyEvent& rKEvt ) rView.BrkAction(); bReturn = true; } -else if ( rView.AreObjectsMarked() ) +else if ( rView.GetMarkedObjectList().GetMarkCount() != 0 ) { const SdrHdlList& rHdlList = rView.GetHdlList(); SdrHdl* pHdl = rHdlList.GetFocusHdl(); @@ -145,7 +145,7 @@ bool DlgEdFunc::KeyInput( const KeyEvent& rKEvt ) rView.MarkNextObj( !aCode.IsShift() ); } -if ( rView.AreObjectsMarked() ) +
core.git: 2 commits - include/svx sc/source sd/qa sd/source svx/source sw/source
include/svx/svdmrkv.hxx |3 - sc/source/ui/drawfunc/drawsh5.cxx|4 +- sc/source/ui/drawfunc/fuins1.cxx |2 - sc/source/ui/view/cliputil.cxx |2 - sc/source/ui/view/gridwin.cxx|2 - sc/source/ui/view/tabvwshb.cxx |6 +-- sd/qa/unit/misc-tests.cxx|6 ++- sd/qa/unit/tiledrendering/tiledrendering.cxx |2 - sd/source/ui/view/drviews2.cxx |6 +-- sd/source/ui/view/sdview.cxx |6 +-- sd/source/ui/view/sdview2.cxx|4 +- svx/source/engine3d/view3d.cxx | 44 ++- svx/source/engine3d/view3d1.cxx |6 +-- svx/source/svdraw/svddrgv.cxx| 16 - svx/source/svdraw/svdedtv.cxx|6 +-- svx/source/svdraw/svdedtv1.cxx |6 +-- svx/source/svdraw/svdedtv2.cxx | 24 +++--- svx/source/svdraw/svdedxv.cxx|8 +++- svx/source/svdraw/svdmrkv.cxx| 16 - svx/source/svdraw/svdview.cxx|6 +-- svx/source/svdraw/svdxcgv.cxx|8 ++-- sw/source/uibase/shells/drawsh.cxx |2 - sw/source/uibase/shells/drwbassh.cxx |4 +- sw/source/uibase/uiview/viewdlg2.cxx |6 +-- sw/source/uibase/utlui/content.cxx |2 - 25 files changed, 101 insertions(+), 96 deletions(-) New commits: commit 2d362fab91fb70fbe7026c1e96452fe06fa5736e Author: Xisco Fauli AuthorDate: Wed May 29 14:03:00 2024 +0200 Commit: Xisco Fauli CommitDate: Thu May 30 08:44:27 2024 +0200 GetMarkedObjectByIndex -> GetMarkedObjectList().GetMark()->GetMarkedSdrObj() In order to reduce number of calls to GetMarkedObjectList() later on Change-Id: I57ab7d2d8edd98da5175bd1066dfab0fa2cc888e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168220 Tested-by: Xisco Fauli Reviewed-by: Xisco Fauli diff --git a/include/svx/svdmrkv.hxx b/include/svx/svdmrkv.hxx index 4271466ec329..5e008b3d9095 100644 --- a/include/svx/svdmrkv.hxx +++ b/include/svx/svdmrkv.hxx @@ -258,7 +258,6 @@ protected: public: // all available const methods for read access to selection const SdrMarkList& GetMarkedObjectList() const { return maSdrViewSelection.GetMarkedObjectList(); } -SdrObject* GetMarkedObjectByIndex(size_t nNum) const { return GetMarkedObjectList().GetMark(nNum)->GetMarkedSdrObj(); } bool AreObjectsMarked() const { return 0 != GetMarkedObjectList().GetMarkCount(); } // Get a list of all those links which are connected to marked nodes, diff --git a/sc/source/ui/drawfunc/drawsh5.cxx b/sc/source/ui/drawfunc/drawsh5.cxx index e4edfd455f4f..c82b01bcc23e 100644 --- a/sc/source/ui/drawfunc/drawsh5.cxx +++ b/sc/source/ui/drawfunc/drawsh5.cxx @@ -509,7 +509,7 @@ void ScDrawShell::ExecDrawFunc( SfxRequest& rReq ) if(1 == pView->GetMarkedObjectList().GetMarkCount()) { // #i68101# -SdrObject* pSelected = pView->GetMarkedObjectByIndex(0); +SdrObject* pSelected = pView->GetMarkedObjectList().GetMark(0)->GetMarkedSdrObj(); assert(pSelected && "ScDrawShell::ExecDrawFunc: nMarkCount, but no object (!)"); if(SC_LAYER_INTERN != pSelected->GetLayer()) @@ -582,7 +582,7 @@ void ScDrawShell::ExecDrawFunc( SfxRequest& rReq ) { if(1 == pView->GetMarkedObjectList().GetMarkCount()) { -SdrObject* pSelected = pView->GetMarkedObjectByIndex(0); +SdrObject* pSelected = pView->GetMarkedObjectList().GetMark(0)->GetMarkedSdrObj(); assert(pSelected && "ScDrawShell::ExecDrawFunc: nMarkCount, but no object (!)"); if(SC_LAYER_INTERN != pSelected->GetLayer()) diff --git a/sc/source/ui/drawfunc/fuins1.cxx b/sc/source/ui/drawfunc/fuins1.cxx index 1152eaf10024..d58eb090b384 100644 --- a/sc/source/ui/drawfunc/fuins1.cxx +++ b/sc/source/ui/drawfunc/fuins1.cxx @@ -131,7 +131,7 @@ static void lcl_InsertGraphic( const Graphic& rGraphic, // style for other objects if(pDrawView && 1 == pDrawView->GetMarkedObjectList().GetMarkCount()) { -SdrObject* pPickObj = pDrawView->GetMarkedObjectByIndex(0); +SdrObject* pPickObj = pDrawView->GetMarkedObjectList().GetMark(0)->GetMarkedSdrObj(); if(pPickObj) { diff --git a/sc/source/ui/view/cliputil.cxx b/sc/source/ui/view/cliputil.cxx index b1e14127e2d3..ec507c91c3a4 100644 --- a/sc/source/ui/view/cliputil.cxx +++ b/sc/source/ui/view/cliputil.cxx @@ -87,7 +87,7 @@ void ScClipUtil::PasteFromClipboard( ScViewData& rViewData, ScTabViewShell* pTa
core.git: 2 commits - include/svx reportdesign/source sc/source sd/source svx/source sw/source
include/svx/svdmrkv.hxx |2 - reportdesign/source/ui/report/ViewsWindow.cxx |2 - sc/source/ui/drawfunc/graphsh.cxx |6 +-- sd/source/ui/func/fucopy.cxx |2 - sd/source/ui/func/fumorph.cxx |2 - sd/source/ui/func/futransf.cxx|2 - sd/source/ui/func/fuvect.cxx |2 - sd/source/ui/view/GraphicObjectBar.cxx|2 - sd/source/ui/view/drawview.cxx|2 - sd/source/ui/view/drviews2.cxx|2 - sd/source/ui/view/drviews6.cxx|2 - sd/source/ui/view/drviews9.cxx|2 - sd/source/ui/view/sdview2.cxx |2 - sd/source/ui/view/sdview3.cxx |2 - svx/source/core/extedit.cxx |2 - svx/source/engine3d/view3d.cxx|2 - svx/source/svdraw/svdedtv.cxx |6 +-- svx/source/svdraw/svdedtv1.cxx|8 ++-- svx/source/svdraw/svdedtv2.cxx| 44 +- svx/source/svdraw/svdmrkv.cxx | 14 svx/source/svdraw/svdmrkv1.cxx| 10 ++--- svx/source/svdraw/svdpoev.cxx |8 ++-- svx/source/svdraw/svdview.cxx |4 +- svx/source/svdraw/svdxcgv.cxx |4 +- svx/source/tbxctrls/grafctrl.cxx |2 - sw/source/core/draw/dview.cxx |2 - 26 files changed, 68 insertions(+), 70 deletions(-) New commits: commit da95e7ae392368ca414be5c62a08879221cb71e9 Author: Xisco Fauli AuthorDate: Wed May 29 13:09:02 2024 +0200 Commit: Xisco Fauli CommitDate: Wed May 29 17:07:38 2024 +0200 SortMarkedObjects() -> GetMarkedObjectList().ForceSort() In order to reduce number of calls to GetMarkedObjectList() later on Change-Id: Ia74949a47308f95607881a7d44c8c26404902745 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168217 Tested-by: Jenkins Reviewed-by: Xisco Fauli Tested-by: Xisco Fauli diff --git a/include/svx/svdmrkv.hxx b/include/svx/svdmrkv.hxx index 92c788b1a828..51620a78c6b8 100644 --- a/include/svx/svdmrkv.hxx +++ b/include/svx/svdmrkv.hxx @@ -261,7 +261,6 @@ public: // returns SAL_MAX_SIZE if not found SdrPageView* GetSdrPageViewOfMarkedByIndex(size_t nNum) const { return GetMarkedObjectList().GetMark(nNum)->GetPageView(); } SdrObject* GetMarkedObjectByIndex(size_t nNum) const { return GetMarkedObjectList().GetMark(nNum)->GetMarkedSdrObj(); } -void SortMarkedObjects() const { GetMarkedObjectList().ForceSort(); } bool AreObjectsMarked() const { return 0 != GetMarkedObjectList().GetMarkCount(); } // Get a list of all those links which are connected to marked nodes, diff --git a/reportdesign/source/ui/report/ViewsWindow.cxx b/reportdesign/source/ui/report/ViewsWindow.cxx index d5e7d7b8c930..7c79896e82e0 100644 --- a/reportdesign/source/ui/report/ViewsWindow.cxx +++ b/reportdesign/source/ui/report/ViewsWindow.cxx @@ -627,7 +627,7 @@ void OViewsWindow::collectRectangles(TRectangleMap& _rSortRectangles) OSectionView& rView = rxSection->getReportSection().getSectionView(); if ( rView.AreObjectsMarked() ) { -rView.SortMarkedObjects(); +rView.GetMarkedObjectList().ForceSort(); const size_t nCount = rView.GetMarkedObjectList().GetMarkCount(); for (size_t i=0; i < nCount; ++i) { diff --git a/sd/source/ui/view/sdview3.cxx b/sd/source/ui/view/sdview3.cxx index 02cdd653fc5f..79401ef28aea 100644 --- a/sd/source/ui/view/sdview3.cxx +++ b/sd/source/ui/view/sdview3.cxx @@ -401,7 +401,7 @@ bool View::InsertData( const TransferableDataHelper& rDataHelper, if( !pPV->IsLayerLocked( aLayer ) ) { pOwnData->SetInternalMove( true ); -SortMarkedObjects(); +GetMarkedObjectList().ForceSort(); for( size_t nM = 0; nM < GetMarkedObjectList().GetMarkCount(); ++nM ) { diff --git a/svx/source/engine3d/view3d.cxx b/svx/source/engine3d/view3d.cxx index 384cf5f2d550..8dff357af689 100644 --- a/svx/source/engine3d/view3d.cxx +++ b/svx/source/engine3d/view3d.cxx @@ -276,7 +276,7 @@ void E3dView::DrawMarkedObj(OutputDevice& rOut) const if(nullptr != pScene) { // code from parent -SortMarkedObjects(); +GetMarkedObjectList().ForceSort(); pScene->SetDrawOnlySelected(true); pScene->SingleObjectPainter(rOut); diff --git a/svx/source/svdraw/svdedtv.cxx b/svx/source/svdraw/svdedtv.cxx index 581b9216531b..c6d058b4a644 100644 --- a/svx/source/svdraw/svdedtv.cxx +++ b/svx/source/svdraw/svdedtv.cxx @@ -491,7 +491,7 @@ void Sdr
core.git: 2 commits - include/svx svx/source
include/svx/svdmrkv.hxx |2 -- svx/source/svdraw/svdglev.cxx | 14 +++--- svx/source/svdraw/svdmrkv.cxx |4 ++-- svx/source/svdraw/svdpoev.cxx | 14 +++--- 4 files changed, 16 insertions(+), 18 deletions(-) New commits: commit e73c7982b7c374b1b28535883bd8898edad25e50 Author: Xisco Fauli AuthorDate: Wed May 29 12:54:48 2024 +0200 Commit: Xisco Fauli CommitDate: Wed May 29 17:07:09 2024 +0200 svx: GetDescriptionOfMarkedPoints() -> ... ... GetMarkedObjectList().GetPointMarkDescription() In order to reduce number of calls to GetMarkedObjectList() later on Change-Id: I5886fd20ffd9df115e12947f4dc7293c98b50bbf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168215 Tested-by: Xisco Fauli Reviewed-by: Xisco Fauli diff --git a/include/svx/svdmrkv.hxx b/include/svx/svdmrkv.hxx index 631931f8e341..2d196780d6c6 100644 --- a/include/svx/svdmrkv.hxx +++ b/include/svx/svdmrkv.hxx @@ -264,7 +264,6 @@ public: void SortMarkedObjects() const { GetMarkedObjectList().ForceSort(); } bool AreObjectsMarked() const { return 0 != GetMarkedObjectList().GetMarkCount(); } OUString const & GetDescriptionOfMarkedObjects() const { return GetMarkedObjectList().GetMarkDescription(); } -OUString const & GetDescriptionOfMarkedPoints() const { return GetMarkedObjectList().GetPointMarkDescription(); } // Get a list of all those links which are connected to marked nodes, // but which are not marked themselves. diff --git a/svx/source/svdraw/svdmrkv.cxx b/svx/source/svdraw/svdmrkv.cxx index 669f114163a0..76b20ef5bc8f 100644 --- a/svx/source/svdraw/svdmrkv.cxx +++ b/svx/source/svdraw/svdmrkv.cxx @@ -2727,7 +2727,7 @@ OUString SdrMarkView::ImpGetDescriptionString(TranslateId pStrCacheID, ImpGetDes { if(nOpt == ImpGetDescriptionOptions::POINTS) { -sStr = sStr.replaceAt(nPos, 2, GetDescriptionOfMarkedPoints()); +sStr = sStr.replaceAt(nPos, 2, GetMarkedObjectList().GetPointMarkDescription()); } else if(nOpt == ImpGetDescriptionOptions::GLUEPOINTS) { diff --git a/svx/source/svdraw/svdpoev.cxx b/svx/source/svdraw/svdpoev.cxx index 8cd84dfb4df0..7185e0bc81ba 100644 --- a/svx/source/svdraw/svdpoev.cxx +++ b/svx/source/svdraw/svdpoev.cxx @@ -196,7 +196,7 @@ void SdrPolyEditView::SetMarkedPointsSmooth(SdrPathSmoothKind eKind) const bool bUndo = IsUndoEnabled(); if( bUndo ) -BegUndo(SvxResId(STR_EditSetPointsSmooth), GetDescriptionOfMarkedPoints()); +BegUndo(SvxResId(STR_EditSetPointsSmooth), GetMarkedObjectList().GetPointMarkDescription()); const size_t nMarkCount(GetMarkedObjectList().GetMarkCount()); for(size_t nMarkNum(nMarkCount); nMarkNum > 0;) @@ -230,7 +230,7 @@ void SdrPolyEditView::SetMarkedSegmentsKind(SdrPathSegmentKind eKind) const bool bUndo = IsUndoEnabled(); if( bUndo ) -BegUndo(SvxResId(STR_EditSetSegmentsKind), GetDescriptionOfMarkedPoints()); +BegUndo(SvxResId(STR_EditSetSegmentsKind), GetMarkedObjectList().GetPointMarkDescription()); const size_t nMarkCount(GetMarkedObjectList().GetMarkCount()); for(size_t nMarkNum=nMarkCount; nMarkNum > 0;) @@ -296,7 +296,7 @@ void SdrPolyEditView::DeleteMarkedPoints() if( bUndo ) { // Description - BegUndo(SvxResId(STR_EditDelete),GetDescriptionOfMarkedPoints(),SdrRepeatFunc::Delete); + BegUndo(SvxResId(STR_EditDelete),GetMarkedObjectList().GetPointMarkDescription(),SdrRepeatFunc::Delete); } for (size_t nMarkNum=nMarkCount; nMarkNum>0;) @@ -342,7 +342,7 @@ void SdrPolyEditView::RipUpAtMarkedPoints() const bool bUndo = IsUndoEnabled(); if( bUndo ) -BegUndo(SvxResId(STR_EditRipUp), GetDescriptionOfMarkedPoints()); +BegUndo(SvxResId(STR_EditRipUp), GetMarkedObjectList().GetPointMarkDescription()); for(size_t nMarkNum = nMarkCount; nMarkNum > 0;) { @@ -605,7 +605,7 @@ void SdrPolyEditView::MoveMarkedPoints(const Size& rSiz) { ForceUndirtyMrkPnt(); OUString aStr(SvxResId(STR_EditMove)); -BegUndo(aStr,GetDescriptionOfMarkedPoints(),SdrRepeatFunc::Move); + BegUndo(aStr,GetMarkedObjectList().GetPointMarkDescription(),SdrRepeatFunc::Move); ImpTransformMarkedPoints(ImpMove,); EndUndo(); AdjustMarkHdl(); @@ -622,7 +622,7 @@ void SdrPolyEditView::ResizeMarkedPoints(const Point& rRef, const Fraction& xFac { ForceUndirtyMrkPnt(); OUString aStr(SvxResId(STR_EditResize)); -BegUndo(aStr,GetDescriptionOfMarkedPoints(),SdrRepeatFunc::Resize); + BegUndo(aStr,GetMarkedObjectList().GetPointMarkDescription(),SdrRepeatFunc::Resize); ImpTransformMarkedPoints(ImpResize,,,); EndUndo(); AdjustMarkHdl(); @@ -639,7 +639,7 @@ void SdrPolyEditView::RotateMarkedPoints(const Point& rRef, Degree100 nAngle) { ForceUndirtyMrkPnt(); OUString aStr(
core.git: 2 commits - chart2/source include/svx reportdesign/source sc/source sd/source svx/source sw/source
chart2/source/controller/main/ShapeController.cxx |4 - include/svx/svdmrkv.hxx|2 reportdesign/source/ui/report/ReportController.cxx |2 reportdesign/source/ui/report/ViewsWindow.cxx |6 +- sc/source/ui/drawfunc/drawsh5.cxx |4 - sc/source/ui/drawfunc/fuins1.cxx |2 sc/source/ui/view/cliputil.cxx |2 sc/source/ui/view/gridwin.cxx |2 sc/source/ui/view/tabvwshb.cxx | 10 ++-- sd/source/ui/dlg/navigatr.cxx |2 sd/source/ui/func/smarttag.cxx |2 sd/source/ui/view/drviews2.cxx |6 +- sd/source/ui/view/sdview.cxx |8 +-- sd/source/ui/view/sdview2.cxx |8 +-- sd/source/ui/view/sdview3.cxx |2 svx/source/dialog/imapwnd.cxx |2 svx/source/engine3d/view3d.cxx | 28 ++-- svx/source/engine3d/view3d1.cxx|2 svx/source/svdraw/svddrgmt.cxx |8 +-- svx/source/svdraw/svddrgv.cxx | 12 ++--- svx/source/svdraw/svdedtv.cxx | 10 ++-- svx/source/svdraw/svdedtv1.cxx | 48 ++--- svx/source/svdraw/svdedtv2.cxx | 38 svx/source/svdraw/svdedxv.cxx |7 +-- svx/source/svdraw/svdglev.cxx |8 +-- svx/source/svdraw/svdmrkv.cxx | 46 ++-- svx/source/svdraw/svdmrkv1.cxx | 26 +-- svx/source/svdraw/svdpoev.cxx | 18 +++ svx/source/svdraw/svdview.cxx | 10 ++-- svx/source/svdraw/svdxcgv.cxx |8 +-- svx/source/unodraw/unoshap2.cxx|2 sw/source/uibase/shells/drawsh.cxx |2 sw/source/uibase/shells/drwbassh.cxx | 10 ++-- sw/source/uibase/shells/frmsh.cxx |6 +- sw/source/uibase/uiview/viewdlg2.cxx |6 +- sw/source/uibase/utlui/content.cxx |2 36 files changed, 180 insertions(+), 181 deletions(-) New commits: commit 12c76a4fa169ee2362e79ea19284ed132eac9084 Author: Xisco Fauli AuthorDate: Wed May 29 12:49:12 2024 +0200 Commit: Xisco Fauli CommitDate: Wed May 29 17:06:45 2024 +0200 GetMarkedObjectCount() -> GetMarkedObjectList().GetMarkCount() In order to reduce number of calls to GetMarkedObjectList() later on Change-Id: Id94f66545950f0fdf124ba7b985a5215a01d63fe Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168213 Tested-by: Xisco Fauli Reviewed-by: Xisco Fauli diff --git a/chart2/source/controller/main/ShapeController.cxx b/chart2/source/controller/main/ShapeController.cxx index c440a7d97925..96c14a4fadad 100644 --- a/chart2/source/controller/main/ShapeController.cxx +++ b/chart2/source/controller/main/ShapeController.cxx @@ -397,7 +397,7 @@ void ShapeController::executeDispatch_ObjectTitleDescription() return; DrawViewWrapper* pDrawViewWrapper = m_pChartController->GetDrawViewWrapper(); -if ( !(pDrawViewWrapper && pDrawViewWrapper->GetMarkedObjectCount() == 1) ) +if ( !(pDrawViewWrapper && pDrawViewWrapper->GetMarkedObjectList().GetMarkCount() == 1) ) return; SdrObject* pSelectedObj = pDrawViewWrapper->getSelectedObject(); @@ -432,7 +432,7 @@ void ShapeController::executeDispatch_RenameObject() return; DrawViewWrapper* pDrawViewWrapper = m_pChartController->GetDrawViewWrapper(); -if ( !(pDrawViewWrapper && pDrawViewWrapper->GetMarkedObjectCount() == 1) ) +if ( !(pDrawViewWrapper && pDrawViewWrapper->GetMarkedObjectList().GetMarkCount() == 1) ) return; SdrObject* pSelectedObj = pDrawViewWrapper->getSelectedObject(); diff --git a/include/svx/svdmrkv.hxx b/include/svx/svdmrkv.hxx index 2c1ee0d88f5d..214de9f65bf9 100644 --- a/include/svx/svdmrkv.hxx +++ b/include/svx/svdmrkv.hxx @@ -261,7 +261,6 @@ public: // returns SAL_MAX_SIZE if not found SdrPageView* GetSdrPageViewOfMarkedByIndex(size_t nNum) const { return GetMarkedObjectList().GetMark(nNum)->GetPageView(); } SdrObject* GetMarkedObjectByIndex(size_t nNum) const { return GetMarkedObjectList().GetMark(nNum)->GetMarkedSdrObj(); } -size_t GetMarkedObjectCount() const { return GetMarkedObjectList().GetMarkCount(); } void SortMarkedObjects() const { GetMarkedObjectList().ForceSort(); } bool AreObjectsMarked() const { return 0 != GetMarkedObjectList().GetMarkCount(); } OUString const & GetDescriptionOfMarkedObjects() const { return GetMarkedObjectList().GetMarkDescription(); } diff --git a/reportd
core.git: include/svx reportdesign/source sd/source svx/source
include/svx/svdmrkv.hxx |1 reportdesign/source/ui/report/ViewsWindow.cxx |4 +- sd/source/ui/view/sdview2.cxx |4 +- sd/source/ui/view/sdview3.cxx |2 - svx/source/engine3d/view3d.cxx|6 ++-- svx/source/svdraw/svddrgmt.cxx|8 ++--- svx/source/svdraw/svdedtv.cxx |6 ++-- svx/source/svdraw/svdedtv1.cxx| 36 +- svx/source/svdraw/svdedtv2.cxx| 32 +++ svx/source/svdraw/svdglev.cxx |8 ++--- svx/source/svdraw/svdmrkv.cxx | 34 svx/source/svdraw/svdmrkv1.cxx| 26 +- svx/source/svdraw/svdpoev.cxx | 18 ++--- svx/source/svdraw/svdxcgv.cxx |4 +- 14 files changed, 94 insertions(+), 95 deletions(-) New commits: commit 4c5485ef6826b5b2483df869056aac4499aff229 Author: Xisco Fauli AuthorDate: Wed May 29 12:37:42 2024 +0200 Commit: Xisco Fauli CommitDate: Wed May 29 15:50:27 2024 +0200 svx: GetSdrMarkByIndex -> GetMarkedObjectList().GetMark In order to reduce number of calls to GetMarkedObjectList() later on Change-Id: Iec0ad9ed33329719116e39232f86d92dbd6e0da8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168211 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/include/svx/svdmrkv.hxx b/include/svx/svdmrkv.hxx index edcc0678b676..8838005e3d21 100644 --- a/include/svx/svdmrkv.hxx +++ b/include/svx/svdmrkv.hxx @@ -261,7 +261,6 @@ public: // returns SAL_MAX_SIZE if not found size_t TryToFindMarkedObject(const SdrObject* pObj) const { return GetMarkedObjectList().FindObject(pObj); } SdrPageView* GetSdrPageViewOfMarkedByIndex(size_t nNum) const { return GetMarkedObjectList().GetMark(nNum)->GetPageView(); } -SdrMark* GetSdrMarkByIndex(size_t nNum) const { return GetMarkedObjectList().GetMark(nNum); } SdrObject* GetMarkedObjectByIndex(size_t nNum) const { return GetMarkedObjectList().GetMark(nNum)->GetMarkedSdrObj(); } size_t GetMarkedObjectCount() const { return GetMarkedObjectList().GetMarkCount(); } void SortMarkedObjects() const { GetMarkedObjectList().ForceSort(); } diff --git a/reportdesign/source/ui/report/ViewsWindow.cxx b/reportdesign/source/ui/report/ViewsWindow.cxx index 44c3c4285e38..c04a01b2d53e 100644 --- a/reportdesign/source/ui/report/ViewsWindow.cxx +++ b/reportdesign/source/ui/report/ViewsWindow.cxx @@ -631,7 +631,7 @@ void OViewsWindow::collectRectangles(TRectangleMap& _rSortRectangles) const size_t nCount = rView.GetMarkedObjectCount(); for (size_t i=0; i < nCount; ++i) { -const SdrMark* pM = rView.GetSdrMarkByIndex(i); +const SdrMark* pM = rView.GetMarkedObjectList().GetMark(i); SdrObject* pObj = pM->GetMarkedSdrObj(); tools::Rectangle aObjRect(pObj->GetSnapRect()); _rSortRectangles.emplace(aObjRect,TRectangleMap::mapped_type(pObj,)); @@ -1027,7 +1027,7 @@ void OViewsWindow::BegDragObj(const Point& _aPnt, SdrHdl* _pHdl,const OSectionVi const size_t nCount = rView.GetMarkedObjectCount(); for (size_t i=0; i < nCount; ++i) { -const SdrMark* pM = rView.GetSdrMarkByIndex(i); +const SdrMark* pM = rView.GetMarkedObjectList().GetMark(i); SdrObject* pObj = pM->GetMarkedSdrObj(); if (::std::find(m_aBegDragTempList.begin(),m_aBegDragTempList.end(),pObj) == m_aBegDragTempList.end()) { diff --git a/sd/source/ui/view/sdview2.cxx b/sd/source/ui/view/sdview2.cxx index 9703c7c3f022..2ce09acf8b32 100644 --- a/sd/source/ui/view/sdview2.cxx +++ b/sd/source/ui/view/sdview2.cxx @@ -453,7 +453,7 @@ sal_Int8 View::AcceptDrop( const AcceptDropEvent& rEvt, DropTargetHelper& rTarge if (GetMarkedObjectCount() == 1) { -SdrMark* pMark = GetSdrMarkByIndex(0); +SdrMark* pMark = GetMarkedObjectList().GetMark(0); SdrObject* pObj = pMark->GetMarkedSdrObj(); aRect.Union( pObj->GetLogicRect() ); } @@ -634,7 +634,7 @@ sal_Int8 View::ExecuteDrop( const ExecuteDropEvent& rEvt, if( GetMarkedObjectCount() == 1 ) { -SdrMark* pMark = GetSdrMarkByIndex(0); +SdrMark* pMark = GetMarkedObjectList().GetMark(0); SdrObject* pObj = pMark->GetMarkedSdrObj(); aRect.Union( pObj->GetLogicRect() ); } diff --git a/sd/source/ui/view/sdview3.cxx b/sd/source/ui/view/sdview3.cxx index a40edc2baed1..6df4d8161548 100644 --- a/sd/source/ui/view/sdview3.cxx +++ b/sd/source/ui/view/sdview3.cxx @@ -405,7 +405,
core.git: sw/inc
sw/inc/textboxhelper.hxx |7 --- 1 file changed, 4 insertions(+), 3 deletions(-) New commits: commit 0753aa966eba18ddf0534abd21ff92edcfdb7982 Author: Xisco Fauli AuthorDate: Tue May 28 09:55:09 2024 +0200 Commit: Xisco Fauli CommitDate: Tue May 28 15:10:19 2024 +0200 sw: use SAL_RET_MAYBENULL in getOtherTextBoxFormat() Change-Id: I854f0d2f38fc9c6b3f8afc4b05d42fbc26e76bc2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168138 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/sw/inc/textboxhelper.hxx b/sw/inc/textboxhelper.hxx index c4f4c3d8fbbb..4afd6fa9960c 100644 --- a/sw/inc/textboxhelper.hxx +++ b/sw/inc/textboxhelper.hxx @@ -122,10 +122,11 @@ public: * * @see isTextBox */ -static SwFrameFormat* getOtherTextBoxFormat(const SwFrameFormat* pFormat, sal_uInt16 nType, -const SdrObject* pObject = nullptr); +SAL_RET_MAYBENULL static SwFrameFormat* +getOtherTextBoxFormat(const SwFrameFormat* pFormat, sal_uInt16 nType, + const SdrObject* pObject = nullptr); /// If we have an associated TextFrame, then return that. -static SwFrameFormat* +SAL_RET_MAYBENULL static SwFrameFormat* getOtherTextBoxFormat(css::uno::Reference const& xShape); /// If we have an associated TextFrame, then return its XTextFrame. static css::uno::Reference
core.git: 2 commits - sd/source
sd/source/ui/inc/ViewShellBase.hxx |2 +- sd/source/ui/table/TableDesignPane.cxx | 14 +- sd/source/ui/view/ViewShellBase.cxx |4 ++-- sd/source/ui/view/viewoverlaymanager.cxx | 10 ++ 4 files changed, 18 insertions(+), 12 deletions(-) New commits: commit b81ff51a8ccac942effdd309f014591604376ecc Author: Xisco Fauli AuthorDate: Mon May 27 20:04:31 2024 +0200 Commit: Xisco Fauli CommitDate: Tue May 28 11:18:02 2024 +0200 sd: use SAL_RET_MAYBENULL in GetDrawView() Directly return nullptr instead of calling SfxViewShell::GetDrawView() which return nullptr to make it obvious Change-Id: I5e81d23f541a73181bb6f7d9e7f1d6ec56ff57ad Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168116 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/sd/source/ui/inc/ViewShellBase.hxx b/sd/source/ui/inc/ViewShellBase.hxx index cdec6d8a6b02..1e1517eb6550 100644 --- a/sd/source/ui/inc/ViewShellBase.hxx +++ b/sd/source/ui/inc/ViewShellBase.hxx @@ -153,7 +153,7 @@ public: virtual bool PrepareClose (bool bUI = true) override; virtual void WriteUserData (OUString&, bool bBrowse = false) override; virtual void ReadUserData (const OUString&, bool bBrowse = false) override; -virtual SdrView* GetDrawView() const override; +SAL_RET_MAYBENULL virtual SdrView* GetDrawView() const override; /** When is given, then the mouse shape is set to hour glass (or whatever the busy shape looks like on the system.) diff --git a/sd/source/ui/view/ViewShellBase.cxx b/sd/source/ui/view/ViewShellBase.cxx index bf125e126b0d..3672f5655bf6 100644 --- a/sd/source/ui/view/ViewShellBase.cxx +++ b/sd/source/ui/view/ViewShellBase.cxx @@ -816,8 +816,8 @@ SdrView* ViewShellBase::GetDrawView() const ViewShell* pShell = GetMainViewShell().get(); if (pShell != nullptr) return pShell->GetDrawView (); -else -return SfxViewShell::GetDrawView(); + +return nullptr; } void ViewShellBase::SetBusyState (bool bBusy) commit f60fd89e3d4ee60d9b9d0a02ed96c36ff8667188 Author: Xisco Fauli AuthorDate: Mon May 27 22:12:38 2024 +0200 Commit: Xisco Fauli CommitDate: Tue May 28 11:17:56 2024 +0200 sd: warning C6011: Dereferencing NULL pointer Change-Id: Id073e5d340fc91836b4689fb3e7a558ef3263e56 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168119 Tested-by: Xisco Fauli Reviewed-by: Xisco Fauli diff --git a/sd/source/ui/table/TableDesignPane.cxx b/sd/source/ui/table/TableDesignPane.cxx index 1b9262d954e3..54797bb3894c 100644 --- a/sd/source/ui/table/TableDesignPane.cxx +++ b/sd/source/ui/table/TableDesignPane.cxx @@ -379,9 +379,13 @@ void TableDesignWidget::EditStyle(const OUString& rCommand) aBoxInfoItem.SetTable(false); aNewAttr.Put(aBoxInfoItem); +SdrView* pDrawView = mrBase.GetDrawView(); +if (!pDrawView) +return; + SvxAbstractDialogFactory* pFact = SvxAbstractDialogFactory::Create(); ScopedVclPtr pDlg(pFact ? pFact->CreateSvxFormatCellsDialog( -mrBase.GetFrameWeld(), aNewAttr, mrBase.GetDrawView()->GetModel(), true) : nullptr); +mrBase.GetFrameWeld(), aNewAttr, pDrawView->GetModel(), true) : nullptr); if (pDlg && pDlg->Execute() == RET_OK) { endTextEditForStyle(xTableStyle); @@ -452,10 +456,9 @@ void TableDesignWidget::ApplyStyle() if( sStyleName.isEmpty() ) return; -SdrView* pView = mrBase.GetDrawView(); if( mxSelectedTable.is() ) { -if( pView ) +if (SdrView* pView = mrBase.GetDrawView()) { if (pView->IsTextEdit()) pView->SdrEndTextEdit(); @@ -693,8 +696,9 @@ void TableDesignWidget::endTextEditForStyle(const Reference& rStyle) if (xTableStyle != rStyle) return; -if (mrBase.GetDrawView()->IsTextEdit()) -mrBase.GetDrawView()->SdrEndTextEdit(); +SdrView* pDrawView = mrBase.GetDrawView(); +if (pDrawView && pDrawView->IsTextEdit()) +pDrawView->SdrEndTextEdit(); } void TableDesignWidget::addListener() diff --git a/sd/source/ui/view/viewoverlaymanager.cxx b/sd/source/ui/view/viewoverlaymanager.cxx index bd2e6be970f8..dfc6c61759fc 100644 --- a/sd/source/ui/view/viewoverlaymanager.cxx +++ b/sd/source/ui/view/viewoverlaymanager.cxx @@ -479,8 +479,9 @@ IMPL_LINK_NOARG(ViewOverlayManager, UpdateTagsHdl, void*, void) bool bChanges = DisposeTags(); bChanges |= CreateTags(); -if( bChanges && mrBase.GetDrawView() ) -static_cast< ::sd::View* >( mrBase.GetDrawView() )->updateHandles(); +SdrView* pDrawView = mrBase.GetDrawView(); +if( bChanges && pDrawView ) +static_cast< ::sd::View* >( pDrawView )->updateHandles(); } bool ViewOverlayMan
core.git: sc/source
sc/source/ui/vba/excelvbahelper.hxx |8 1 file changed, 4 insertions(+), 4 deletions(-) New commits: commit 75776e7fb94affecb60ae5b9816d72ecafa3e340 Author: Xisco Fauli AuthorDate: Mon May 27 11:49:25 2024 +0200 Commit: Xisco Fauli CommitDate: Mon May 27 23:29:09 2024 +0200 sc: use SAL_RET_MAYBENULL in getBestViewShell(), getDocShell()... ... getCurrentBestViewShell() and getViewFrame() See 286a1c03fa10acf60f076a0af987112d24cb2ff5 "sc: check excel::getDocShell" Change-Id: Ibdd3f83d4f0571dccdd009f4b1790043144def0d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168090 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/sc/source/ui/vba/excelvbahelper.hxx b/sc/source/ui/vba/excelvbahelper.hxx index 6f0d71d67789..8216e37963c0 100644 --- a/sc/source/ui/vba/excelvbahelper.hxx +++ b/sc/source/ui/vba/excelvbahelper.hxx @@ -51,10 +51,10 @@ void implnCopy( const css::uno::Reference< css::frame::XModel>& xModel ); void implnPaste ( const css::uno::Reference< css::frame::XModel>& xModel ); void implnCut( const css::uno::Reference< css::frame::XModel>& xModel ); void implnPasteSpecial( const css::uno::Reference< css::frame::XModel>& xModel, InsertDeleteFlags nFlags, ScPasteFunc nFunction, bool bSkipEmpty, bool bTranspose); -ScTabViewShell* getBestViewShell( const css::uno::Reference< css::frame::XModel>& xModel ) ; -ScDocShell* getDocShell( const css::uno::Reference< css::frame::XModel>& xModel ) ; -ScTabViewShell* getCurrentBestViewShell( const css::uno::Reference< css::uno::XComponentContext >& xContext ); -SfxViewFrame* getViewFrame( const css::uno::Reference< css::frame::XModel >& xModel ); +SAL_RET_MAYBENULL ScTabViewShell* getBestViewShell( const css::uno::Reference< css::frame::XModel>& xModel ) ; +SAL_RET_MAYBENULL ScDocShell* getDocShell( const css::uno::Reference< css::frame::XModel>& xModel ) ; +SAL_RET_MAYBENULL ScTabViewShell* getCurrentBestViewShell( const css::uno::Reference< css::uno::XComponentContext >& xContext ); +SAL_RET_MAYBENULL SfxViewFrame* getViewFrame( const css::uno::Reference< css::frame::XModel >& xModel ); /// @throws css::uno::RuntimeException css::uno::Reference< css::sheet::XUnnamedDatabaseRanges > GetUnnamedDataBaseRanges( const ScDocShell* pShell );
core.git: sc/source
sc/source/ui/vba/vbaapplication.cxx | 10 ++- sc/source/ui/vba/vbawindow.cxx | 46 +++- sc/source/ui/vba/vbaworksheet.cxx | 13 -- 3 files changed, 39 insertions(+), 30 deletions(-) New commits: commit fbf3ef5e32d88655eb28b83cad3b1cf84dcc83b0 Author: Xisco Fauli AuthorDate: Mon May 27 13:14:55 2024 +0200 Commit: Xisco Fauli CommitDate: Mon May 27 23:28:40 2024 +0200 sc: warning C6011: Dereferencing NULL pointer Change-Id: I37d541f4c75f053023f67fc3617492bf38a13ea3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168095 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/sc/source/ui/vba/vbaapplication.cxx b/sc/source/ui/vba/vbaapplication.cxx index 2fceecb58024..299e6adb4527 100644 --- a/sc/source/ui/vba/vbaapplication.cxx +++ b/sc/source/ui/vba/vbaapplication.cxx @@ -664,11 +664,14 @@ ScVbaApplication::GoTo( const uno::Any& Reference, const uno::Any& Scroll ) OUString sRangeName; if( Reference >>= sRangeName ) { +ScTabViewShell* pShell = excel::getCurrentBestViewShell( mxContext ); +if (!pShell) +return; + uno::Reference< frame::XModel > xModel( getCurrentDocument(), uno::UNO_SET_THROW ); uno::Reference< sheet::XSpreadsheetView > xSpreadsheet( xModel->getCurrentController(), uno::UNO_QUERY_THROW ); -ScTabViewShell* pShell = excel::getCurrentBestViewShell( mxContext ); ScGridWindow* gridWindow = static_cast(pShell->GetWindow()); try { @@ -709,8 +712,11 @@ ScVbaApplication::GoTo( const uno::Any& Reference, const uno::Any& Scroll ) uno::Reference< excel::XRange > xRange; if( Reference >>= xRange ) { -uno::Reference< excel::XRange > xVbaRange( Reference, uno::UNO_QUERY ); ScTabViewShell* pShell = excel::getCurrentBestViewShell( mxContext ); +if (!pShell) +return; + +uno::Reference< excel::XRange > xVbaRange( Reference, uno::UNO_QUERY ); ScGridWindow* gridWindow = static_cast(pShell->GetWindow()); if ( xVbaRange.is() ) { diff --git a/sc/source/ui/vba/vbawindow.cxx b/sc/source/ui/vba/vbawindow.cxx index 4608a2a73f02..2c860eadcf86 100644 --- a/sc/source/ui/vba/vbawindow.cxx +++ b/sc/source/ui/vba/vbawindow.cxx @@ -380,15 +380,17 @@ ScVbaWindow::getWindowState() { sal_Int32 nwindowState = xlNormal; // !! TODO !! get view shell from controller -ScTabViewShell* pViewShell = excel::getBestViewShell( m_xModel ); -SfxViewFrame& rViewFrame = pViewShell->GetViewFrame(); -WorkWindow* pWork = static_cast( rViewFrame.GetFrame().GetSystemWindow() ); -if ( pWork ) +if (ScTabViewShell* pViewShell = excel::getBestViewShell( m_xModel )) { -if ( pWork -> IsMaximized()) -nwindowState = xlMaximized; -else if (pWork -> IsMinimized()) -nwindowState = xlMinimized; +SfxViewFrame& rViewFrame = pViewShell->GetViewFrame(); +WorkWindow* pWork = static_cast( rViewFrame.GetFrame().GetSystemWindow() ); +if ( pWork ) +{ +if ( pWork -> IsMaximized()) +nwindowState = xlMaximized; +else if (pWork -> IsMinimized()) +nwindowState = xlMinimized; +} } return uno::Any( nwindowState ); } @@ -399,19 +401,21 @@ ScVbaWindow::setWindowState( const uno::Any& _windowstate ) sal_Int32 nwindowState = xlMaximized; _windowstate >>= nwindowState; // !! TODO !! get view shell from controller -ScTabViewShell* pViewShell = excel::getBestViewShell( m_xModel ); -SfxViewFrame& rViewFrame = pViewShell->GetViewFrame(); -WorkWindow* pWork = static_cast( rViewFrame.GetFrame().GetSystemWindow() ); -if ( pWork ) -{ -if ( nwindowState == xlMaximized) -pWork -> Maximize(); -else if (nwindowState == xlMinimized) -pWork -> Minimize(); -else if (nwindowState == xlNormal) -pWork -> Restore(); -else -throw uno::RuntimeException(u"Invalid Parameter"_ustr ); +if (ScTabViewShell* pViewShell = excel::getBestViewShell( m_xModel )) +{ +SfxViewFrame& rViewFrame = pViewShell->GetViewFrame(); +WorkWindow* pWork = static_cast( rViewFrame.GetFrame().GetSystemWindow() ); +if ( pWork ) +{ +if ( nwindowState == xlMaximized) +pWork -> Maximize(); +else if (nwindowState == xlMinimized) +pWork -> Minimize(); +else if (nwindowState == xlNormal) +pWork -> Restore(); +else +throw uno::RuntimeException(u"Invalid Parameter"_ustr ); +} } } diff --git a/sc/source/ui/vba/v
core.git: include/sfx2
include/sfx2/viewfrm.hxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 369a3b5ab389222bbbc9aafaa5c2d9f269ba5775 Author: Xisco Fauli AuthorDate: Mon May 27 18:29:35 2024 +0200 Commit: Xisco Fauli CommitDate: Mon May 27 20:46:46 2024 +0200 sfx2: use SAL_RET_MAYBENULL in GetFrameWeld() Change-Id: I78c4d190f8fcb96abaad267b19ab6cb3732a1807 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168112 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/include/sfx2/viewfrm.hxx b/include/sfx2/viewfrm.hxx index 884b557dc741..e0c56342eae5 100644 --- a/include/sfx2/viewfrm.hxx +++ b/include/sfx2/viewfrm.hxx @@ -111,7 +111,7 @@ public: SfxBindings&GetBindings() { return *m_pBindings; } const SfxBindings& GetBindings() const { return *m_pBindings; } vcl::Window&GetWindow() const; -weld::Window* GetFrameWeld() const; +SAL_RET_MAYBENULL weld::Window* GetFrameWeld() const; SAL_DLLPRIVATE SfxProgress* GetProgress() const;
core.git: 2 commits - sd/source
sd/source/ui/dlg/sdtreelb.cxx | 12 +++- sd/source/ui/inc/ViewShellBase.hxx |2 +- 2 files changed, 8 insertions(+), 6 deletions(-) New commits: commit bcb863f132ebe8502b0f13f17cbd6185c2acdb78 Author: Xisco Fauli AuthorDate: Mon May 27 13:35:58 2024 +0200 Commit: Xisco Fauli CommitDate: Mon May 27 19:58:09 2024 +0200 sd: use SAL_RET_MAYBENULL in GetViewShellBase() Change-Id: If2f9662f87b02fe42cd144daa7855424ef31db0b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168097 Reviewed-by: Xisco Fauli Tested-by: Jenkins diff --git a/sd/source/ui/inc/ViewShellBase.hxx b/sd/source/ui/inc/ViewShellBase.hxx index e31429f6e41a..cdec6d8a6b02 100644 --- a/sd/source/ui/inc/ViewShellBase.hxx +++ b/sd/source/ui/inc/ViewShellBase.hxx @@ -91,7 +91,7 @@ public: When the SfxViewShell of the given frame is not a ViewShellBase object then NULL is returned. */ -static ViewShellBase* GetViewShellBase (SfxViewFrame const * pFrame); +SAL_RET_MAYBENULL static ViewShellBase* GetViewShellBase (SfxViewFrame const * pFrame); DrawDocShell* GetDocShell() const { return mpDocShell;} SdDrawDocument* GetDocument() const { return mpDocument;} commit d561f52ac8e5355c4a50f38beb81b6aff9255cca Author: Xisco Fauli AuthorDate: Mon May 27 16:36:23 2024 +0200 Commit: Xisco Fauli CommitDate: Mon May 27 19:58:02 2024 +0200 sd: warning C6011: Dereferencing NULL pointer Change-Id: I29d7f1174c79262afd84ab8399050366dda95a76 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168106 Tested-by: Xisco Fauli Reviewed-by: Xisco Fauli diff --git a/sd/source/ui/dlg/sdtreelb.cxx b/sd/source/ui/dlg/sdtreelb.cxx index b1928e52d764..3e1c8069f3bd 100644 --- a/sd/source/ui/dlg/sdtreelb.cxx +++ b/sd/source/ui/dlg/sdtreelb.cxx @@ -1120,11 +1120,13 @@ void SdPageObjsTLV::SetSdNavigator(SdNavigatorWin* pNavigator) void SdPageObjsTLV::SetViewFrame(const SfxViewFrame* pViewFrame) { -sd::ViewShellBase* pBase = sd::ViewShellBase::GetViewShellBase(pViewFrame); -std::shared_ptr xViewShell = pBase->GetMainViewShell(); -SAL_WARN_IF(!xViewShell, "sd", "null pBaseViewFrame"); -const css::uno::Reference< css::frame::XFrame > xFrame = xViewShell ? xViewShell->GetViewFrame()->GetFrame().GetFrameInterface() : nullptr; -m_xAccel->init(::comphelper::getProcessComponentContext(), xFrame); +if (sd::ViewShellBase* pBase = sd::ViewShellBase::GetViewShellBase(pViewFrame)) +{ +std::shared_ptr xViewShell = pBase->GetMainViewShell(); +SAL_WARN_IF(!xViewShell, "sd", "null pBaseViewFrame"); +const css::uno::Reference< css::frame::XFrame > xFrame = xViewShell ? xViewShell->GetViewFrame()->GetFrame().GetFrameInterface() : nullptr; +m_xAccel->init(::comphelper::getProcessComponentContext(), xFrame); +} } /**
core.git: sd/source
sd/source/ui/inc/unomodel.hxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 2429b8b511d2c856ae72489da4ded5f9daaee58b Author: Xisco Fauli AuthorDate: Mon May 27 13:39:33 2024 +0200 Commit: Xisco Fauli CommitDate: Mon May 27 18:44:04 2024 +0200 sd: use SAL_RET_MAYBENULL in GetViewShell() Change-Id: I2074bd17c8d4069c170d3567970960e43b10a641 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168098 Reviewed-by: Xisco Fauli Tested-by: Jenkins diff --git a/sd/source/ui/inc/unomodel.hxx b/sd/source/ui/inc/unomodel.hxx index dfb4ffb56f54..a4dc13e775f7 100644 --- a/sd/source/ui/inc/unomodel.hxx +++ b/sd/source/ui/inc/unomodel.hxx @@ -121,7 +121,7 @@ private: void initializeDocument(); -sd::DrawViewShell* GetViewShell(); +SAL_RET_MAYBENULL sd::DrawViewShell* GetViewShell(); /** abstract SdrModel provider */ virtual SdrModel& getSdrModelFromUnoModel() const override;
core.git: starmath/inc
starmath/inc/view.hxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 10fbca7ebde81fc7246402f7025f219777c12488 Author: Xisco Fauli AuthorDate: Mon May 20 14:04:53 2024 +0200 Commit: Xisco Fauli CommitDate: Mon May 27 17:29:10 2024 +0200 starmath: use SAL_RET_MAYBENULL in GetEditWindow() after 359e2be93a4560a86237f076003c23a6635fb1bb "starmath: check GetEditWindow()" Change-Id: I6a93c00a3b67338e7f2816d1ef31ccf7afe8555e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167865 Reviewed-by: Xisco Fauli Tested-by: Jenkins diff --git a/starmath/inc/view.hxx b/starmath/inc/view.hxx index 03f67fdbed40..dd9102dfcaef 100644 --- a/starmath/inc/view.hxx +++ b/starmath/inc/view.hxx @@ -284,7 +284,7 @@ public: return static_cast( GetViewFrame().GetObjectShell() ); } -SmEditWindow * GetEditWindow(); +SAL_RET_MAYBENULL SmEditWindow * GetEditWindow(); SmGraphicWidget& GetGraphicWidget() {
core.git: sd/source
sd/source/ui/inc/ViewShellManager.hxx |6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) New commits: commit 9f890f5a50d32b7985d0ab5146bfb9c3ff312fc4 Author: Xisco Fauli AuthorDate: Mon May 27 12:59:34 2024 +0200 Commit: Xisco Fauli CommitDate: Mon May 27 15:42:00 2024 +0200 sd: use SAL_RET_MAYBENULL in GetShell(), GetTopShell()... ... and GetTopViewShell() Change-Id: Ia6de13c078994978e7223a7d8ba3b3f604fcd0c4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168094 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/sd/source/ui/inc/ViewShellManager.hxx b/sd/source/ui/inc/ViewShellManager.hxx index c4011c52d5fd..b56335ad6170 100644 --- a/sd/source/ui/inc/ViewShellManager.hxx +++ b/sd/source/ui/inc/ViewShellManager.hxx @@ -152,16 +152,16 @@ public: When the specified shell is currently not active then NULL is returned. */ -SfxShell* GetShell(ShellId nId) const; +SAL_RET_MAYBENULL SfxShell* GetShell(ShellId nId) const; /** Return the top-most shell on the SFX shell stack regardless of whether that is a view shell or a sub shell. */ -SfxShell* GetTopShell() const; +SAL_RET_MAYBENULL SfxShell* GetTopShell() const; /** Return the top-most active view shell on the internal shell stack. */ -SfxShell* GetTopViewShell() const; +SAL_RET_MAYBENULL SfxShell* GetTopViewShell() const; /** Use this class to safely lock updates of the view shell stack. */
core.git: sd/source
sd/source/ui/slideshow/slideshowimpl.hxx |6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) New commits: commit 9fa1573c0e33d56f21734a519e4496cd8b10b04f Author: Xisco Fauli AuthorDate: Mon May 27 12:22:43 2024 +0200 Commit: Xisco Fauli CommitDate: Mon May 27 15:41:41 2024 +0200 sd: use SAL_RET_MAYBENULL in getViewFrame(), getDispatcher()... ... and getBindings() Change-Id: Ieb7c2181238faa7c7175822ef455f6e3ce04fa8e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168092 Reviewed-by: Xisco Fauli Tested-by: Jenkins diff --git a/sd/source/ui/slideshow/slideshowimpl.hxx b/sd/source/ui/slideshow/slideshowimpl.hxx index 8b4e25a80e83..4aff8cb3a23e 100644 --- a/sd/source/ui/slideshow/slideshowimpl.hxx +++ b/sd/source/ui/slideshow/slideshowimpl.hxx @@ -283,9 +283,9 @@ private: bool startShowImpl( const css::uno::Sequence< css::beans::PropertyValue >& aProperties ); -SfxViewFrame* getViewFrame() const; -SfxDispatcher* getDispatcher() const; -SfxBindings* getBindings() const; +SAL_RET_MAYBENULL SfxViewFrame* getViewFrame() const; +SAL_RET_MAYBENULL SfxDispatcher* getDispatcher() const; +SAL_RET_MAYBENULL SfxBindings* getBindings() const; sal_Int32 getSlideNumberForBookmark( const OUString& rStrBookmark );
core.git: Branch 'libreoffice-24-2' - sc/source
sc/source/ui/docshell/dbdocfun.cxx |2 +- sc/source/ui/docshell/docfunc.cxx |2 +- 2 files changed, 2 insertions(+), 2 deletions(-) New commits: commit bcbe3c31aa9166c853a24ea49184e0493a97f6c6 Author: Xisco Fauli AuthorDate: Thu May 23 15:41:43 2024 +0200 Commit: Caolán McNamara CommitDate: Sun May 26 20:21:41 2024 +0200 sc: warning C6011: Dereferencing NULL pointer Change-Id: Ib6535d167ec741ea0641208d01f01bee334c0e79 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167992 Reviewed-by: Xisco Fauli Tested-by: Jenkins (cherry picked from commit 64b14cc6ab688abbea2f87bc25ba42159b5dc904) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167942 Reviewed-by: Caolán McNamara diff --git a/sc/source/ui/docshell/dbdocfun.cxx b/sc/source/ui/docshell/dbdocfun.cxx index ee59f36232ae..204854b09764 100644 --- a/sc/source/ui/docshell/dbdocfun.cxx +++ b/sc/source/ui/docshell/dbdocfun.cxx @@ -630,7 +630,7 @@ bool ScDBDocFunc::Sort( SCTAB nTab, const ScSortParam& rSortParam, while (pViewShell) { ScTabViewShell* pTabViewShell = dynamic_cast(pViewShell); -if (pTabViewShell && pTabViewShell->GetDocId() == pSomeViewForThisDoc->GetDocId()) +if (pTabViewShell && pSomeViewForThisDoc && pTabViewShell->GetDocId() == pSomeViewForThisDoc->GetDocId()) { if (ScPositionHelper* pPosHelper = pTabViewShell->GetViewData().GetLOKHeightHelper(nTab)) pPosHelper->invalidateByIndex(nStartRow); diff --git a/sc/source/ui/docshell/docfunc.cxx b/sc/source/ui/docshell/docfunc.cxx index d67e6efa66cb..9f7bbbe58ce2 100644 --- a/sc/source/ui/docshell/docfunc.cxx +++ b/sc/source/ui/docshell/docfunc.cxx @@ -180,7 +180,7 @@ bool ScDocFunc::AdjustRowHeight( const ScRange& rRange, bool bPaint, bool bApi ) while (pViewShell) { ScTabViewShell* pTabViewShell = dynamic_cast(pViewShell); -if (pTabViewShell && pTabViewShell->GetDocId() == pSomeViewForThisDoc->GetDocId()) +if (pTabViewShell && pSomeViewForThisDoc && pTabViewShell->GetDocId() == pSomeViewForThisDoc->GetDocId()) { if (ScPositionHelper* pPosHelper = pTabViewShell->GetViewData().GetLOKHeightHelper(nTab)) pPosHelper->invalidateByIndex(nStartRow);
core.git: sc/source
sc/source/ui/inc/docsh.hxx |8 1 file changed, 4 insertions(+), 4 deletions(-) New commits: commit b46b0e92e54d871af8c2f2471c991c5d243a089d Author: Xisco Fauli AuthorDate: Thu May 23 15:44:39 2024 +0200 Commit: Xisco Fauli CommitDate: Thu May 23 20:28:22 2024 +0200 use SAL_RET_MAYBENULL in GetViewBindings(), GetBestViewShell()... ... GetViewData() and GetShellByNum() Change-Id: I9a53e2d4cf1241195985cf095d274f596abd6427 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167993 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/sc/source/ui/inc/docsh.hxx b/sc/source/ui/inc/docsh.hxx index 4cc4ceacfb11..0b82b85ea3e9 100644 --- a/sc/source/ui/inc/docsh.hxx +++ b/sc/source/ui/inc/docsh.hxx @@ -378,9 +378,9 @@ public: const OUString& GetDdeTextFmt() const { return m_aDdeTextFmt; } -SfxBindings*GetViewBindings(); +SAL_RET_MAYBENULL SfxBindings* GetViewBindings(); -SC_DLLPUBLIC ScTabViewShell* GetBestViewShell( bool bOnlyVisible = true ); +SAL_RET_MAYBENULL SC_DLLPUBLIC ScTabViewShell* GetBestViewShell( bool bOnlyVisible = true ); voidSetDocumentModifiedPending( bool bVal ) { m_bDocumentModifiedPending = bVal; } @@ -397,10 +397,10 @@ public: OutputDevice* GetRefDevice(); // WYSIWYG: Printer, otherwise VirtualDevice... -SC_DLLPUBLIC static ScViewData* GetViewData(); +SAL_RET_MAYBENULL SC_DLLPUBLIC static ScViewData* GetViewData(); SC_DLLPUBLIC static SCTAB GetCurTab(); -static ScDocShell* GetShellByNum( sal_uInt16 nDocNo ); +SAL_RET_MAYBENULL static ScDocShell* GetShellByNum( sal_uInt16 nDocNo ); static OUString GetOwnFilterName(); static OUString GetHtmlFilterName(); static OUString GetWebQueryFilterName();
core.git: sc/qa
sc/qa/unit/copy_paste_test.cxx | 86 ++- sc/qa/unit/jumbosheets-test.cxx | 16 +++-- sc/qa/unit/tiledrendering/tiledrendering.cxx | 20 +++--- 3 files changed, 81 insertions(+), 41 deletions(-) New commits: commit 4ebf7f55cee69386353185372dabb406031d74da Author: Xisco Fauli AuthorDate: Thu May 23 16:42:24 2024 +0200 Commit: Xisco Fauli CommitDate: Thu May 23 20:27:59 2024 +0200 sc/qa: warning C6011: Dereferencing NULL pointer Change-Id: I6556217bd132c0cd80ffa40fef397b9f86cae09d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167996 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/sc/qa/unit/copy_paste_test.cxx b/sc/qa/unit/copy_paste_test.cxx index 5270e28c7c9b..2e49de627d8f 100644 --- a/sc/qa/unit/copy_paste_test.cxx +++ b/sc/qa/unit/copy_paste_test.cxx @@ -78,7 +78,9 @@ void ScCopyPasteTest::testCopyPasteXLS() ScDocument* pDoc = pModelObj->GetDocument(); // Get the document controller -ScTabViewShell* pViewShell = ScDocShell::GetViewData()->GetViewShell(); +ScViewData* pViewData = ScDocShell::GetViewData(); +CPPUNIT_ASSERT(pViewData); +ScTabViewShell* pViewShell = pViewData->GetViewShell(); // 2. Highlight B2:C5 ScRange aSrcRange; @@ -102,7 +104,9 @@ void ScCopyPasteTest::testCopyPasteXLS() mxComponent = loadFromDesktop(u"private:factory/scalc"_ustr); // Get the document controller -pViewShell = ScDocShell::GetViewData()->GetViewShell(); +pViewData = ScDocShell::GetViewData(); +CPPUNIT_ASSERT(pViewData); +pViewShell = pViewData->GetViewShell(); // 6. Paste pViewShell->GetViewData().GetView()->PasteFromClip(InsertDeleteFlags::ALL, ); @@ -150,7 +154,9 @@ void ScCopyPasteTest::testTdf84411() ScDocument* pDoc = pModelObj->GetDocument(); // Get the document controller -ScTabViewShell* pViewShell = ScDocShell::GetViewData()->GetViewShell(); +ScViewData* pViewData = ScDocShell::GetViewData(); +CPPUNIT_ASSERT(pViewData); +ScTabViewShell* pViewShell = pViewData->GetViewShell(); // 2. Setup data and formulas for (unsigned int r = 0; r <= 4991; ++r) @@ -191,7 +197,9 @@ void ScCopyPasteTest::testTdf124565() CPPUNIT_ASSERT(pModelObj); ScDocument* pDoc = pModelObj->GetDocument(); -ScTabViewShell* pViewShell = ScDocShell::GetViewData()->GetViewShell(); +ScViewData* pViewData = ScDocShell::GetViewData(); +CPPUNIT_ASSERT(pViewData); +ScTabViewShell* pViewShell = pViewData->GetViewShell(); // Set content and height of first row pDoc->SetString(ScAddress(0, 0, 0), u"Test"_ustr); @@ -231,7 +239,9 @@ void ScCopyPasteTest::testTdf126421() ScDocument* pDoc = pModelObj->GetDocument(); // Get the document controller -ScTabViewShell* pViewShell = ScDocShell::GetViewData()->GetViewShell(); +ScViewData* pViewData = ScDocShell::GetViewData(); +CPPUNIT_ASSERT(pViewData); +ScTabViewShell* pViewShell = pViewData->GetViewShell(); // 2. Setup data for (int r = 0; r < 2; ++r) @@ -317,16 +327,18 @@ void ScCopyPasteTest::testTdf53431_fillOnAutofilter() ScDocument* pDoc = pModelObj->GetDocument(); // Get the document controller -ScTabViewShell* pViewShell = ScDocShell::GetViewData()->GetViewShell(); +ScViewData* pViewData = ScDocShell::GetViewData(); +CPPUNIT_ASSERT(pViewData); +ScTabViewShell* pViewShell = pViewData->GetViewShell(); //Fill should not clone Autofilter button -ScDocShell::GetViewData()->GetMarkData().SetMarkArea(ScRange(1, 1, 0, 2, 4, 0)); +pViewData->GetMarkData().SetMarkArea(ScRange(1, 1, 0, 2, 4, 0)); pViewShell->FillSimple(FILL_TO_BOTTOM); CPPUNIT_ASSERT((lcl_getMergeFlagOfCell(*pDoc, 1, 1, 0) & ScMF::Auto)); CPPUNIT_ASSERT((lcl_getMergeFlagOfCell(*pDoc, 2, 1, 0) & ScMF::Auto)); CPPUNIT_ASSERT(!(lcl_getMergeFlagOfCell(*pDoc, 1, 4, 0) & ScMF::Auto)); -ScDocShell::GetViewData()->GetMarkData().SetMarkArea(ScRange(1, 1, 0, 4, 4, 0)); +pViewData->GetMarkData().SetMarkArea(ScRange(1, 1, 0, 4, 4, 0)); pViewShell->FillSimple(FILL_TO_RIGHT); CPPUNIT_ASSERT((lcl_getMergeFlagOfCell(*pDoc, 1, 1, 0) & ScMF::Auto)); CPPUNIT_ASSERT((lcl_getMergeFlagOfCell(*pDoc, 2, 1, 0) & ScMF::Auto)); @@ -335,20 +347,20 @@ void ScCopyPasteTest::testTdf53431_fillOnAutofilter() CPPUNIT_ASSERT(!(lcl_getMergeFlagOfCell(*pDoc, 4, 4, 0) & ScMF::Auto)); //Fill should not delete Autofilter buttons -ScDocShell::GetViewData()->GetMarkData().SetMarkArea(ScRange(0, 0, 0, 2, 4, 0)); +pViewData->GetMarkData().SetMarkArea(ScRange(0, 0, 0, 2, 4, 0)); pViewShell->FillSimple(FILL_TO_TOP); CPPUNIT_ASSERT((lcl_getMergeFlagOfCell(*pDoc, 1, 1, 0) & ScMF::Auto)); CPPUNIT_ASSERT((lcl_getMergeFlagOfCel
core.git: sc/source
sc/source/ui/docshell/dbdocfun.cxx |2 +- sc/source/ui/docshell/docfunc.cxx |2 +- 2 files changed, 2 insertions(+), 2 deletions(-) New commits: commit 64b14cc6ab688abbea2f87bc25ba42159b5dc904 Author: Xisco Fauli AuthorDate: Thu May 23 15:41:43 2024 +0200 Commit: Xisco Fauli CommitDate: Thu May 23 20:27:24 2024 +0200 sc: warning C6011: Dereferencing NULL pointer Change-Id: Ib6535d167ec741ea0641208d01f01bee334c0e79 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167992 Reviewed-by: Xisco Fauli Tested-by: Jenkins diff --git a/sc/source/ui/docshell/dbdocfun.cxx b/sc/source/ui/docshell/dbdocfun.cxx index ee59f36232ae..204854b09764 100644 --- a/sc/source/ui/docshell/dbdocfun.cxx +++ b/sc/source/ui/docshell/dbdocfun.cxx @@ -630,7 +630,7 @@ bool ScDBDocFunc::Sort( SCTAB nTab, const ScSortParam& rSortParam, while (pViewShell) { ScTabViewShell* pTabViewShell = dynamic_cast(pViewShell); -if (pTabViewShell && pTabViewShell->GetDocId() == pSomeViewForThisDoc->GetDocId()) +if (pTabViewShell && pSomeViewForThisDoc && pTabViewShell->GetDocId() == pSomeViewForThisDoc->GetDocId()) { if (ScPositionHelper* pPosHelper = pTabViewShell->GetViewData().GetLOKHeightHelper(nTab)) pPosHelper->invalidateByIndex(nStartRow); diff --git a/sc/source/ui/docshell/docfunc.cxx b/sc/source/ui/docshell/docfunc.cxx index d47f6f0bde40..6e3e050b8366 100644 --- a/sc/source/ui/docshell/docfunc.cxx +++ b/sc/source/ui/docshell/docfunc.cxx @@ -180,7 +180,7 @@ bool ScDocFunc::AdjustRowHeight( const ScRange& rRange, bool bPaint, bool bApi ) while (pViewShell) { ScTabViewShell* pTabViewShell = dynamic_cast(pViewShell); -if (pTabViewShell && pTabViewShell->GetDocId() == pSomeViewForThisDoc->GetDocId()) +if (pTabViewShell && pSomeViewForThisDoc && pTabViewShell->GetDocId() == pSomeViewForThisDoc->GetDocId()) { if (ScPositionHelper* pPosHelper = pTabViewShell->GetViewData().GetLOKHeightHelper(nTab)) pPosHelper->invalidateByIndex(nStartRow);
core.git: sw/source
sw/source/ui/dbui/mmgreetingspage.cxx |4 ++-- sw/source/ui/dbui/mmgreetingspage.hxx |3 ++- sw/source/ui/dbui/mmresultdialogs.cxx | 17 +++-- sw/source/uibase/utlui/content.cxx|5 ++--- 4 files changed, 13 insertions(+), 16 deletions(-) New commits: commit b9f9493b43f89ad1560e9779796ade7854aa2b74 Author: Xisco Fauli AuthorDate: Thu May 23 11:07:20 2024 +0200 Commit: Xisco Fauli CommitDate: Thu May 23 15:52:52 2024 +0200 sw: warning C6011: Dereferencing NULL pointer Change-Id: I612ec139354345f48fb5d3b41bdb10c37ad85ff7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167983 Reviewed-by: Xisco Fauli Tested-by: Jenkins diff --git a/sw/source/ui/dbui/mmgreetingspage.cxx b/sw/source/ui/dbui/mmgreetingspage.cxx index 5fb6ed5a0648..3e5f8d43c243 100644 --- a/sw/source/ui/dbui/mmgreetingspage.cxx +++ b/sw/source/ui/dbui/mmgreetingspage.cxx @@ -337,9 +337,9 @@ IMPL_LINK(SwMailMergeGreetingsPage, InsertDataHdl_Impl, weld::Button&, rButton, m_xDocumentIndexFI->set_label(m_sDocument.replaceFirst("%1", OUString::number(nPos))); } -SwMailBodyDialog::SwMailBodyDialog(weld::Window* pParent) +SwMailBodyDialog::SwMailBodyDialog(weld::Window* pParent, std::shared_ptr const & rConfigItem) : SfxDialogController(pParent, u"modules/swriter/ui/mmmailbody.ui"_ustr, u"MailBodyDialog"_ustr) -, SwGreetingsHandler(*GetActiveView()->GetMailMergeConfigItem(), *m_xBuilder) +, SwGreetingsHandler(*rConfigItem, *m_xBuilder) , m_xBodyMLE(m_xBuilder->weld_text_view(u"bodymle"_ustr)) , m_xOK(m_xBuilder->weld_button(u"ok"_ustr)) { diff --git a/sw/source/ui/dbui/mmgreetingspage.hxx b/sw/source/ui/dbui/mmgreetingspage.hxx index 7d266870b13b..39761659bdcc 100644 --- a/sw/source/ui/dbui/mmgreetingspage.hxx +++ b/sw/source/ui/dbui/mmgreetingspage.hxx @@ -119,7 +119,8 @@ class SwMailBodyDialog : public SfxDialogController, public SwGreetingsHandler DECL_LINK(OKHdl, weld::Button&, void); public: -SwMailBodyDialog(weld::Window* pParent); +SwMailBodyDialog(weld::Window* pParent, + std::shared_ptr const& rConfigItem); virtual ~SwMailBodyDialog() override; void SetBody(const OUString& rBody) { m_xBodyMLE->set_text(rBody); } diff --git a/sw/source/ui/dbui/mmresultdialogs.cxx b/sw/source/ui/dbui/mmresultdialogs.cxx index e36306678c8f..35ea44e6e5b4 100644 --- a/sw/source/ui/dbui/mmresultdialogs.cxx +++ b/sw/source/ui/dbui/mmresultdialogs.cxx @@ -892,17 +892,14 @@ IMPL_LINK(SwMMResultEmailDialog, SendTypeHdl_Impl, weld::ComboBox&, rBox, void) IMPL_LINK_NOARG(SwMMResultEmailDialog, SendAsHdl_Impl, weld::Button&, void) { -// work around crash when calling constructor with no active view -if (!GetActiveView()) -{ -SAL_WARN("sw", "ignoring SendAs button click, because no active view"); -return; -} -SwMailBodyDialog aDlg(m_xDialog.get()); -aDlg.SetBody(m_sBody); -if (RET_OK == aDlg.run()) +if (SwView* pView = GetActiveView()) { -m_sBody = aDlg.GetBody(); +SwMailBodyDialog aDlg(m_xDialog.get(), pView->GetMailMergeConfigItem()); +aDlg.SetBody(m_sBody); +if (RET_OK == aDlg.run()) +{ +m_sBody = aDlg.GetBody(); +} } } diff --git a/sw/source/uibase/utlui/content.cxx b/sw/source/uibase/utlui/content.cxx index fb7833e244a4..1346d3bb5094 100644 --- a/sw/source/uibase/utlui/content.cxx +++ b/sw/source/uibase/utlui/content.cxx @@ -3156,9 +3156,8 @@ bool SwContentTree::FillTransferData(TransferDataContainer& rTransfer) SfxMedium* pMedium = pDocShell->GetMedium(); sUrl = pMedium->GetURLObject().GetURLNoMark(); } -else if (State::CONSTANT == m_eState - && (!::GetActiveView() - || m_pActiveShell != ::GetActiveView()->GetWrtShellPtr())) +else if (SwView* pView = GetActiveView(); State::CONSTANT == m_eState + && (!pView || m_pActiveShell != pView->GetWrtShellPtr())) { // Urls of inactive views cannot dragged without // file names, also.
core.git: Branch 'libreoffice-24-2' - sw/source
sw/source/uibase/utlui/unotools.cxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit bb2cd0f6bdb13186c4d67934d0db73151230a421 Author: Xisco Fauli AuthorDate: Wed May 22 22:34:52 2024 +0200 Commit: Xisco Fauli CommitDate: Thu May 23 12:46:48 2024 +0200 sw: warning C6011: Dereferencing NULL pointer Change-Id: Ia4b7f98525e07c5a58b752d7e68d89705f87ac9c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167936 Tested-by: Jenkins Reviewed-by: Caolán McNamara Reviewed-by: Xisco Fauli diff --git a/sw/source/uibase/utlui/unotools.cxx b/sw/source/uibase/utlui/unotools.cxx index 93edfaad30a7..3105fa9607be 100644 --- a/sw/source/uibase/utlui/unotools.cxx +++ b/sw/source/uibase/utlui/unotools.cxx @@ -408,7 +408,7 @@ IMPL_LINK( SwOneExampleFrame, TimeoutHdl, Timer*, pTimer, void ) if (pDoc) { SwEditShell* pSh = pDoc->GetEditShell(); -if( pSh->ActionCount() ) +if( pSh && pSh->ActionCount() ) { pSh->EndAllAction(); pSh->UnlockPaint();
core.git: Branch 'libreoffice-24-2' - sfx2/source
sfx2/source/control/bindings.cxx |3 +++ sfx2/source/control/dispatch.cxx | 16 +--- sfx2/source/view/viewfrm.cxx |4 ++-- 3 files changed, 14 insertions(+), 9 deletions(-) New commits: commit 63870676cda0f36c3763869dfb0fed49da0a2104 Author: Xisco Fauli AuthorDate: Wed May 22 10:17:20 2024 +0200 Commit: Xisco Fauli CommitDate: Thu May 23 12:08:02 2024 +0200 sfx2: warning C6011: Dereferencing NULL pointer Change-Id: Ie65284c3ded0c5789f0be5bbd770d190a92fecec Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167922 Reviewed-by: Xisco Fauli Tested-by: Jenkins Signed-off-by: Xisco Fauli Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167981 Reviewed-by: Caolán McNamara diff --git a/sfx2/source/control/bindings.cxx b/sfx2/source/control/bindings.cxx index 47ddda28136f..8beca9364e71 100644 --- a/sfx2/source/control/bindings.cxx +++ b/sfx2/source/control/bindings.cxx @@ -945,6 +945,9 @@ SfxPoolItemHolder SfxBindings::Execute_Impl( sal_uInt16 nId, const SfxPoolItem** if ( dynamic_cast< const SfxModule *>( pShell ) == nullptr && dynamic_cast< const SfxApplication *>( pShell ) == nullptr && dynamic_cast< const SfxViewFrame *>( pShell ) == nullptr ) return SfxPoolItemHolder(); +if (!pShell) +return SfxPoolItemHolder(); + SfxItemPool = pShell->GetPool(); SfxRequest aReq( nId, nCallMode, rPool ); aReq.SetModifier( nModi ); diff --git a/sfx2/source/control/dispatch.cxx b/sfx2/source/control/dispatch.cxx index fe7271677fbf..bedad9a6241a 100644 --- a/sfx2/source/control/dispatch.cxx +++ b/sfx2/source/control/dispatch.cxx @@ -707,7 +707,7 @@ bool SfxDispatcher::GetShellAndSlot_Impl(sal_uInt16 nSlot, SfxShell** ppShell, *ppShell = GetShell(aSvr.GetShellLevel()); *ppSlot = aSvr.GetSlot(); -if ( nullptr == (*ppSlot)->GetExecFnc() && bRealSlot ) +if ( nullptr == (*ppSlot)->GetExecFnc() && bRealSlot && *ppShell ) *ppSlot = (*ppShell)->GetInterface()->GetRealSlot(*ppSlot); // Check only real slots as enum slots don't have an execute function! return !bRealSlot || ((nullptr != *ppSlot) && (nullptr != (*ppSlot)->GetExecFnc()) ); @@ -986,13 +986,15 @@ void SfxDispatcher::PostMsgHandler(std::unique_ptr pReq) SfxSlotServer aSvr; if ( FindServer_(pReq->GetSlot(), aSvr ) ) // HACK(x), whatever that was supposed to mean { -const SfxSlot *pSlot = aSvr.GetSlot(); -SfxShell *pSh = GetShell(aSvr.GetShellLevel()); +if (SfxShell *pSh = GetShell(aSvr.GetShellLevel())) +{ +const SfxSlot *pSlot = aSvr.GetSlot(); -// When the pSlot is a "Pseudoslot" for macros or Verbs, it can -// be destroyed in the Call_Impl, thus do not use it anymore! -pReq->SetSynchronCall( false ); -Call_Impl( *pSh, *pSlot, *pReq, pReq->AllowsRecording() ); //! why bRecord? +// When the pSlot is a "Pseudoslot" for macros or Verbs, it can +// be destroyed in the Call_Impl, thus do not use it anymore! +pReq->SetSynchronCall( false ); +Call_Impl( *pSh, *pSlot, *pReq, pReq->AllowsRecording() ); //! why bRecord? +} } } else diff --git a/sfx2/source/view/viewfrm.cxx b/sfx2/source/view/viewfrm.cxx index b14ff206fa96..202064f13081 100644 --- a/sfx2/source/view/viewfrm.cxx +++ b/sfx2/source/view/viewfrm.cxx @@ -1093,8 +1093,8 @@ void SfxViewFrame::PopShellAndSubShells_Impl( SfxViewShell& i_rViewShell ) if ( nLevel ) { // more sub shells on the stack, which were not affected by PopSubShells_Impl -SfxShell *pSubShell = m_pDispatcher->GetShell( nLevel-1 ); -m_pDispatcher->Pop( *pSubShell, SfxDispatcherPopFlags::POP_UNTIL | SfxDispatcherPopFlags::POP_DELETE ); +if (SfxShell *pSubShell = m_pDispatcher->GetShell( nLevel-1 )) +m_pDispatcher->Pop( *pSubShell, SfxDispatcherPopFlags::POP_UNTIL | SfxDispatcherPopFlags::POP_DELETE ); } m_pDispatcher->Pop( i_rViewShell ); m_pDispatcher->Flush();
core.git: sw/inc
sw/inc/dcontact.hxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit c7a09ea9d58fbf41090508e32334be3c0356b050 Author: Xisco Fauli AuthorDate: Fri May 17 17:49:54 2024 +0200 Commit: Xisco Fauli CommitDate: Thu May 23 11:47:47 2024 +0200 use SAL_RET_MAYBENULL in GetUserCall after 495b5db74f0db59395ff68bacc8d8ca67595b66e "sw: check GetUserCall" Change-Id: I14b69c1d95ddea2c4c92e6c682930cd501ea7612 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167787 Reviewed-by: Xisco Fauli Tested-by: Jenkins diff --git a/sw/inc/dcontact.hxx b/sw/inc/dcontact.hxx index b4d501f44ccf..c8bfa42e1eab 100644 --- a/sw/inc/dcontact.hxx +++ b/sw/inc/dcontact.hxx @@ -57,7 +57,7 @@ void setContextWritingMode( SdrObject* pObj, SwFrame const * pAnchor ); SwRect GetBoundRectOfAnchoredObj( const SdrObject* pObj ); /// @return UserCall of group object (if applicable). -SwContact* GetUserCall( const SdrObject* ); +SAL_RET_MAYBENULL SwContact* GetUserCall( const SdrObject* ); /// @return TRUE if the SrdObject is a Marquee object. bool IsMarqueeTextObj( const SdrObject& rObj );
core.git: 2 commits - sw/inc sw/source
sw/inc/doc.hxx |6 +++--- sw/source/uibase/utlui/unotools.cxx |2 +- 2 files changed, 4 insertions(+), 4 deletions(-) New commits: commit 0a175b29c7f6b55ac96b9046653486041e98e11f Author: Xisco Fauli AuthorDate: Tue May 21 18:52:27 2024 +0200 Commit: Xisco Fauli CommitDate: Thu May 23 10:59:25 2024 +0200 sw: Use SAL_RET_MAYBENULL in GetEditShell() after 24889135773204c6e3002dcb417c75ff1a99ccd0 "check GetEditShell()" Change-Id: I5650e23e0c2a1c3eb81cfa71c57b809d8abc4b40 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167906 Reviewed-by: Xisco Fauli Tested-by: Jenkins diff --git a/sw/inc/doc.hxx b/sw/inc/doc.hxx index b1b68bec2dba..461f835bc2a5 100644 --- a/sw/inc/doc.hxx +++ b/sw/inc/doc.hxx @@ -1349,9 +1349,9 @@ public: SwAttrPool& GetAttrPool() { return *mpAttrPool; } // Search for an EditShell. -SwEditShell const * GetEditShell() const; -SW_DLLPUBLIC SwEditShell* GetEditShell(); -::sw::IShellCursorSupplier * GetIShellCursorSupplier(); +SAL_RET_MAYBENULL SwEditShell const * GetEditShell() const; +SAL_RET_MAYBENULL SW_DLLPUBLIC SwEditShell* GetEditShell(); +SAL_RET_MAYBENULL ::sw::IShellCursorSupplier * GetIShellCursorSupplier(); // OLE 2.0-notification. void SetOle2Link(const Link& rLink) {maOle2Link = rLink;} commit be9c71df2283523a3bc87f040afb7daa0da0bfdf Author: Xisco Fauli AuthorDate: Wed May 22 22:34:52 2024 +0200 Commit: Xisco Fauli CommitDate: Thu May 23 10:59:20 2024 +0200 sw: warning C6011: Dereferencing NULL pointer Change-Id: Ia4b7f98525e07c5a58b752d7e68d89705f87ac9c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167969 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/sw/source/uibase/utlui/unotools.cxx b/sw/source/uibase/utlui/unotools.cxx index 93edfaad30a7..3105fa9607be 100644 --- a/sw/source/uibase/utlui/unotools.cxx +++ b/sw/source/uibase/utlui/unotools.cxx @@ -408,7 +408,7 @@ IMPL_LINK( SwOneExampleFrame, TimeoutHdl, Timer*, pTimer, void ) if (pDoc) { SwEditShell* pSh = pDoc->GetEditShell(); -if( pSh->ActionCount() ) +if( pSh && pSh->ActionCount() ) { pSh->EndAllAction(); pSh->UnlockPaint();
core.git: 2 commits - include/sfx2 sfx2/source
include/sfx2/dispatch.hxx|4 ++-- sfx2/source/control/bindings.cxx |3 +++ sfx2/source/control/dispatch.cxx | 16 +--- sfx2/source/view/viewfrm.cxx |4 ++-- 4 files changed, 16 insertions(+), 11 deletions(-) New commits: commit 6715899547fd8960e236b090d44367eafef3eb71 Author: Xisco Fauli AuthorDate: Tue May 21 18:36:48 2024 +0200 Commit: Xisco Fauli CommitDate: Thu May 23 09:36:42 2024 +0200 sfx2: use SAL_RET_MAYBENULL in GetBindings() and GetShell() after 9eb083ab732512c3ab64007c3be1c54be97172f6 "check GetShell" Change-Id: I0dcef57019fde7639ddbb981cbd41c13f857b4af Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167905 Reviewed-by: Xisco Fauli Tested-by: Jenkins diff --git a/include/sfx2/dispatch.hxx b/include/sfx2/dispatch.hxx index 48cb3605a8c0..17d2fa464e3b 100644 --- a/include/sfx2/dispatch.hxx +++ b/include/sfx2/dispatch.hxx @@ -132,12 +132,12 @@ public: boolIsActive( const SfxShell& rShell ); sal_uInt16 GetShellLevel( const SfxShell ); -SfxBindings*GetBindings() const; +SAL_RET_MAYBENULL SfxBindings* GetBindings() const; voidPush( SfxShell& rShell ); voidPop( SfxShell& rShell, SfxDispatcherPopFlags nMode = SfxDispatcherPopFlags::NONE ); -SfxShell* GetShell(sal_uInt16 nIdx) const; +SAL_RET_MAYBENULL SfxShell* GetShell(sal_uInt16 nIdx) const; SfxViewFrame* GetFrame() const; SfxModule* GetModule() const; commit 50fa7d2581a69ffec4da6e3cce6a6f0e514b7aa5 Author: Xisco Fauli AuthorDate: Wed May 22 10:17:20 2024 +0200 Commit: Xisco Fauli CommitDate: Thu May 23 09:36:33 2024 +0200 sfx2: warning C6011: Dereferencing NULL pointer Change-Id: Ie65284c3ded0c5789f0be5bbd770d190a92fecec Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167922 Reviewed-by: Xisco Fauli Tested-by: Jenkins diff --git a/sfx2/source/control/bindings.cxx b/sfx2/source/control/bindings.cxx index 659d72254868..ffafadfeb2a6 100644 --- a/sfx2/source/control/bindings.cxx +++ b/sfx2/source/control/bindings.cxx @@ -944,6 +944,9 @@ SfxPoolItemHolder SfxBindings::Execute_Impl( sal_uInt16 nId, const SfxPoolItem** pSlot = pServer->GetSlot(); } +if (!pShell) +return SfxPoolItemHolder(); + SfxItemPool = pShell->GetPool(); SfxRequest aReq( nId, nCallMode, rPool ); aReq.SetModifier( nModi ); diff --git a/sfx2/source/control/dispatch.cxx b/sfx2/source/control/dispatch.cxx index d16a099b9578..d0ebae89f73d 100644 --- a/sfx2/source/control/dispatch.cxx +++ b/sfx2/source/control/dispatch.cxx @@ -707,7 +707,7 @@ bool SfxDispatcher::GetShellAndSlot_Impl(sal_uInt16 nSlot, SfxShell** ppShell, *ppShell = GetShell(aSvr.GetShellLevel()); *ppSlot = aSvr.GetSlot(); -if ( nullptr == (*ppSlot)->GetExecFnc() && bRealSlot ) +if ( nullptr == (*ppSlot)->GetExecFnc() && bRealSlot && *ppShell ) *ppSlot = (*ppShell)->GetInterface()->GetRealSlot(*ppSlot); // Check only real slots as enum slots don't have an execute function! return !bRealSlot || ((nullptr != *ppSlot) && (nullptr != (*ppSlot)->GetExecFnc()) ); @@ -985,13 +985,15 @@ void SfxDispatcher::PostMsgHandler(std::unique_ptr pReq) SfxSlotServer aSvr; if ( FindServer_(pReq->GetSlot(), aSvr ) ) // HACK(x), whatever that was supposed to mean { -const SfxSlot *pSlot = aSvr.GetSlot(); -SfxShell *pSh = GetShell(aSvr.GetShellLevel()); +if (SfxShell *pSh = GetShell(aSvr.GetShellLevel())) +{ +const SfxSlot *pSlot = aSvr.GetSlot(); -// When the pSlot is a "Pseudoslot" for macros or Verbs, it can -// be destroyed in the Call_Impl, thus do not use it anymore! -pReq->SetSynchronCall( false ); -Call_Impl( *pSh, *pSlot, *pReq, pReq->AllowsRecording() ); //! why bRecord? +// When the pSlot is a "Pseudoslot" for macros or Verbs, it can +// be destroyed in the Call_Impl, thus do not use it anymore! +pReq->SetSynchronCall( false ); +Call_Impl( *pSh, *pSlot, *pReq, pReq->AllowsRecording() ); //! why bRecord? +} } } else diff --git a/sfx2/source/view/viewfrm.cxx b/sfx2/source/view/viewfrm.cxx index c79d766676e8..cb93b9c000de 100644 --- a/sfx2/source/view/viewfrm.cxx +++ b/sfx2/source/view/viewfrm.cxx @@ -1094,8 +1094,8 @@ void SfxViewFrame::PopShellAndSubShells_Impl( SfxViewShell& i_rViewShell ) if ( nLevel ) { // more sub shells on the stack, which were not affected by PopSubShells_Impl -SfxShell *pSubShell = m_pDispatcher->GetShell( nLevel-1
core.git: sw/qa
sw/qa/extras/globalfilter/globalfilter.cxx |4 ++- sw/qa/extras/htmlimport/htmlimport.cxx | 12 + sw/qa/extras/layout/layout.cxx |1 sw/qa/extras/layout/layout2.cxx|7 + sw/qa/extras/ooxmlexport/ooxmlexport13.cxx |1 sw/qa/extras/uiwriter/uiwriter.cxx |2 + sw/qa/extras/uiwriter/uiwriter2.cxx|1 sw/qa/extras/uiwriter/uiwriter3.cxx|2 + sw/qa/extras/uiwriter/uiwriter4.cxx|4 +++ sw/qa/extras/uiwriter/uiwriter5.cxx| 20 sw/qa/extras/uiwriter/uiwriter6.cxx| 18 -- sw/qa/extras/uiwriter/uiwriter7.cxx| 35 ++--- sw/qa/extras/uiwriter/uiwriter8.cxx|9 ++- sw/qa/extras/ww8import/ww8import.cxx |1 sw/qa/uibase/shells/shells.cxx |5 +++- 15 files changed, 103 insertions(+), 19 deletions(-) New commits: commit 16a56dfccbd3abd01ec370ce611880ad5c2cb8b8 Author: Xisco Fauli AuthorDate: Wed May 22 10:45:47 2024 +0200 Commit: Xisco Fauli CommitDate: Thu May 23 09:35:31 2024 +0200 sw/qa: warning C6011: Dereferencing NULL pointer Change-Id: I2e84af9463b82600079660a1b136bc9a85d8eb0d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167925 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/sw/qa/extras/globalfilter/globalfilter.cxx b/sw/qa/extras/globalfilter/globalfilter.cxx index 79b9d71c7265..d4ef7c16fd20 100644 --- a/sw/qa/extras/globalfilter/globalfilter.cxx +++ b/sw/qa/extras/globalfilter/globalfilter.cxx @@ -199,7 +199,9 @@ void Test::testLinkedGraphicRT() CPPUNIT_ASSERT_EQUAL_MESSAGE(sFailedMessage.getStr(), sal_uLong(864900), aGraphic.GetSizeBytes()); // Check if linked graphic is registered in LinkManager -sfx2::LinkManager& rLinkManager = pTextDoc->GetDocShell()->GetDoc()->GetEditShell()->GetLinkManager(); +SwEditShell* const pEditShell(pTextDoc->GetDocShell()->GetDoc()->GetEditShell()); +CPPUNIT_ASSERT(pEditShell); +sfx2::LinkManager& rLinkManager = pEditShell->GetLinkManager(); CPPUNIT_ASSERT_EQUAL_MESSAGE(sFailedMessage.getStr(), size_t(1), rLinkManager.GetLinks().size()); const tools::SvRef & rLink = rLinkManager.GetLinks()[0]; CPPUNIT_ASSERT_MESSAGE(sFailedMessage.getStr(), rLink->GetLinkSourceName().indexOf("linked_graphic.jpg") >= 0); diff --git a/sw/qa/extras/htmlimport/htmlimport.cxx b/sw/qa/extras/htmlimport/htmlimport.cxx index e7880c3427e9..74c93ae1d064 100644 --- a/sw/qa/extras/htmlimport/htmlimport.cxx +++ b/sw/qa/extras/htmlimport/htmlimport.cxx @@ -49,7 +49,9 @@ CPPUNIT_TEST_FIXTURE(HtmlImportTest, testPictureImport) SwXTextDocument* pTextDoc = dynamic_cast(mxComponent.get()); CPPUNIT_ASSERT(pTextDoc); // The document contains two pictures stored as a link. -sfx2::LinkManager& rLinkManager = pTextDoc->GetDocShell()->GetDoc()->GetEditShell()->GetLinkManager(); +SwEditShell* const pEditShell(pTextDoc->GetDocShell()->GetDoc()->GetEditShell()); +CPPUNIT_ASSERT(pEditShell); +sfx2::LinkManager& rLinkManager = pEditShell->GetLinkManager(); CPPUNIT_ASSERT_EQUAL(size_t(2), rLinkManager.GetLinks().size()); rLinkManager.Remove(0,2); CPPUNIT_ASSERT_EQUAL(size_t(0), rLinkManager.GetLinks().size()); @@ -106,8 +108,7 @@ CPPUNIT_TEST_FIXTURE(HtmlImportTest, testInlinedImagesPageAndParagraph) // The document contains embedded pictures inlined for PageBackground and // ParagraphBackground, check for their existence after import -SwDoc* pDoc = pTextDoc->GetDocShell()->GetDoc(); -SwEditShell* pEditShell = pDoc->GetEditShell(); +SwEditShell* const pEditShell(pTextDoc->GetDocShell()->GetDoc()->GetEditShell()); CPPUNIT_ASSERT(pEditShell); // images are not linked, check for zero links @@ -210,8 +211,9 @@ CPPUNIT_TEST_FIXTURE(HtmlImportTest, testImageWidthAuto) createSwWebDoc("image-width-auto.html"); SwXTextDocument* pTextDoc = dynamic_cast(mxComponent.get()); CPPUNIT_ASSERT(pTextDoc); -SwTextAttr const*const pAttr(pTextDoc->GetDocShell()->GetDoc()->GetEditShell()-> -GetCursor()->GetPointNode().GetTextNode()->GetTextAttrForCharAt(0, RES_TXTATR_FLYCNT)); +SwEditShell* const pEditShell(pTextDoc->GetDocShell()->GetDoc()->GetEditShell()); +CPPUNIT_ASSERT(pEditShell); +SwTextAttr const*const pAttr(pEditShell->GetCursor()->GetPointNode().GetTextNode()->GetTextAttrForCharAt(0, RES_TXTATR_FLYCNT)); CPPUNIT_ASSERT(pAttr); SwFrameFormat const*const pFmt(pAttr->GetFlyCnt().GetFrameFormat()); SwFormatFrameSize const& rSize(pFmt->GetFormatAttr(RES_FRM_SIZE)); diff --git a/sw/qa/extras/layout/layout.cxx b/sw/qa/extras/layout/layout.cxx index 95f5eb8a93d2..3fd9a481
core.git: download.lst
download.lst |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) New commits: commit 027881928b48c4ea030f5e807cb6bfd45ee977da Author: Xisco Fauli AuthorDate: Wed May 22 13:45:49 2024 +0200 Commit: Xisco Fauli CommitDate: Wed May 22 15:54:01 2024 +0200 openldap: upgrade to 2.6.8 Downloaded from https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-2.6.8.tgz Change-Id: Id071786e90ffa2756b1820dc3b59214c2f2faf6f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167958 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/download.lst b/download.lst index 8e523ba56413..79ef8e4ee4aa 100644 --- a/download.lst +++ b/download.lst @@ -503,8 +503,8 @@ ONLINEUPDATE_TARBALL := onlineupdate-c003be8b9727672e7d30972983b375f4c200233f-2. # three static lines # so that git cherry-pick # will not run into conflicts -OPENLDAP_SHA256SUM := cd775f625c944ed78a3da18a03b03b08eea73c8aabc97b41bb336e9a10954930 -OPENLDAP_TARBALL := openldap-2.6.7.tgz +OPENLDAP_SHA256SUM := 48969323e94e3be3b03c6a132942dcba7ef8d545f2ad35401709019f696c3c4e +OPENLDAP_TARBALL := openldap-2.6.8.tgz # three static lines # so that git cherry-pick # will not run into conflicts
core.git: Branch 'libreoffice-24-2' - sc/source
sc/source/ui/app/inputwin.cxx | 19 ++- sc/source/ui/condformat/condformatdlgentry.cxx | 68 ++--- sc/source/ui/dialogs/searchresults.cxx | 20 ++- sc/source/ui/miscdlgs/mvtabdlg.cxx | 16 +-- sc/source/ui/namedlg/namedefdlg.cxx|8 - sc/source/ui/namedlg/namedlg.cxx |4 sc/source/ui/undo/undodat.cxx | 129 - sc/source/ui/undo/undotab.cxx | 26 - sc/source/ui/view/tabvwsh4.cxx |2 9 files changed, 183 insertions(+), 109 deletions(-) New commits: commit 768823934200096c4bd736526aa9765b1bceb0bb Author: Xisco Fauli AuthorDate: Tue May 21 17:22:53 2024 +0200 Commit: Xisco Fauli CommitDate: Wed May 22 15:45:49 2024 +0200 sc: check GetActiveViewShell() See the recently introduced https://crashreport.libreoffice.org/stats/crash_details/3da2dcd1-ca3e-409a-a665-dcb09d2a3ba0 Change-Id: If6ddc71bc2946232d57d5fd8fd6029b45b19495f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167903 Tested-by: Jenkins Reviewed-by: Xisco Fauli Signed-off-by: Xisco Fauli Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167923 Reviewed-by: Caolán McNamara diff --git a/sc/source/ui/app/inputwin.cxx b/sc/source/ui/app/inputwin.cxx index 7f0cf742b05d..2b2dcb7ebd77 100644 --- a/sc/source/ui/app/inputwin.cxx +++ b/sc/source/ui/app/inputwin.cxx @@ -799,9 +799,11 @@ void ScInputWindow::MouseButtonDown( const MouseEvent& rMEvt ) // I'd prefer to leave at least a single column header and a // row but I don't know how to get that value in pixels. // Use TOOLBOX_WINDOW_HEIGHT for the moment -ScTabViewShell* pViewSh = ScTabViewShell::GetActiveViewShell(); -mnMaxY = GetOutputSizePixel().Height() + (pViewSh->GetGridHeight(SC_SPLIT_TOP) - + pViewSh->GetGridHeight(SC_SPLIT_BOTTOM)) - TOOLBOX_WINDOW_HEIGHT; +if (ScTabViewShell* pViewSh = ScTabViewShell::GetActiveViewShell()) +{ +mnMaxY = GetOutputSizePixel().Height() + (pViewSh->GetGridHeight(SC_SPLIT_TOP) + + pViewSh->GetGridHeight(SC_SPLIT_BOTTOM)) - TOOLBOX_WINDOW_HEIGHT; +} } } @@ -2663,11 +2665,12 @@ void ScPosWnd::DoEnter() if (bOpenManageNamesDialog) { const sal_uInt16 nId = ScNameDlgWrapper::GetChildWindowId(); -ScTabViewShell* pViewSh = ScTabViewShell::GetActiveViewShell(); -assert(pViewSh); -SfxViewFrame& rViewFrm = pViewSh->GetViewFrame(); -SfxChildWindow* pWnd = rViewFrm.GetChildWindow( nId ); -SC_MOD()->SetRefDialog( nId, pWnd == nullptr ); +if (ScTabViewShell* pViewSh = ScTabViewShell::GetActiveViewShell()) +{ +SfxViewFrame& rViewFrm = pViewSh->GetViewFrame(); +SfxChildWindow* pWnd = rViewFrm.GetChildWindow( nId ); +SC_MOD()->SetRefDialog( nId, pWnd == nullptr ); +} } } diff --git a/sc/source/ui/condformat/condformatdlgentry.cxx b/sc/source/ui/condformat/condformatdlgentry.cxx index ade0cede7cef..171c9ecd135b 100644 --- a/sc/source/ui/condformat/condformatdlgentry.cxx +++ b/sc/source/ui/condformat/condformatdlgentry.cxx @@ -440,43 +440,45 @@ void StyleSelect(weld::Window* pDialogParent, weld::ComboBox& rLbStyle, const Sc // unlock the dispatcher so SID_STYLE_NEW can be executed // (SetDispatcherLock would affect all Calc documents) -ScTabViewShell* pViewShell = ScTabViewShell::GetActiveViewShell(); -SfxDispatcher* pDisp = pViewShell->GetDispatcher(); -bool bLocked = pDisp->IsLocked(); -if (bLocked) -pDisp->Lock(false); - -// Execute the "new style" slot, complete with undo and all necessary updates. -// The return value (SfxUInt16Item) is ignored, look for new styles instead. -pDisp->ExecuteList(SID_STYLE_NEW, -SfxCallMode::SYNCHRON | SfxCallMode::RECORD, -{ , }, { }); - -if (bLocked) -pDisp->Lock(true); - -// Find the new style and add it into the style list boxes -SfxStyleSheetIterator aStyleIter( pDoc->GetStyleSheetPool(), SfxStyleFamily::Para ); -bool bFound = false; -for ( SfxStyleSheetBase* pStyle = aStyleIter.First(); pStyle && !bFound; pStyle = aStyleIter.Next() ) +if (ScTabViewShell* pViewShell = ScTabViewShell::GetActiveViewShell()) { -const OUString& aName = pStyle->GetName(); -if (rLbStyle.find_text(aName) == -1)// all lists contain the same entries +SfxDispatcher* pDisp = pViewShell->GetDispatcher(); +bool bLocked = pDisp->IsLocked(); +if (bLocked) +pDisp->Lock(false); +
core.git: sc/source
sc/source/ui/app/inputwin.cxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 4ee802917bd37665df3fe4116eb31b2a9f6be494 Author: Xisco Fauli AuthorDate: Wed May 22 12:40:25 2024 +0200 Commit: Xisco Fauli CommitDate: Wed May 22 15:40:50 2024 +0200 Partially revert 860d11230d6 "sc: check GetActiveViewShell()" See https://gerrit.libreoffice.org/c/core/+/167923/comment/3b02cf2c_feea2a9f/ Change-Id: I54f9609c934c5d56528fc4175462ff1d4deffaae Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167951 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/sc/source/ui/app/inputwin.cxx b/sc/source/ui/app/inputwin.cxx index f39139b7b6e7..e447045e4b51 100644 --- a/sc/source/ui/app/inputwin.cxx +++ b/sc/source/ui/app/inputwin.cxx @@ -1722,6 +1722,7 @@ bool ScTextWnd::Command( const CommandEvent& rCEvt ) if (m_xEditView) { ScModule* pScMod = SC_MOD(); +ScTabViewShell* pStartViewSh = ScTabViewShell::GetActiveViewShell(); // don't modify the font defaults here - the right defaults are // already set in StartEditEngine when the EditEngine is created @@ -1739,7 +1740,6 @@ bool ScTextWnd::Command( const CommandEvent& rCEvt ) { // Is dragged onto another View? ScTabViewShell* pEndViewSh = ScTabViewShell::GetActiveViewShell(); -ScTabViewShell* pStartViewSh = ScTabViewShell::GetActiveViewShell(); if ( pEndViewSh != pStartViewSh && pStartViewSh != nullptr ) { ScViewData& rViewData = pStartViewSh->GetViewData();
core.git: download.lst external/curl
download.lst |4 ++-- external/curl/curl-msvc-disable-protocols.patch.1 |6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) New commits: commit aaf14d96cd9d2273e7828bfa3bd496fc9cb1d61e Author: Xisco Fauli AuthorDate: Wed May 22 11:46:17 2024 +0200 Commit: Xisco Fauli CommitDate: Wed May 22 15:14:44 2024 +0200 curl: Upgrade to 8.8.0 Downloaded from https://curl.se/download/curl-8.8.0.tar.xz Change-Id: Ib6ecbdb774f4d2643d8e848d8826704a51884eac Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167929 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/download.lst b/download.lst index 570ed2258157..8e523ba56413 100644 --- a/download.lst +++ b/download.lst @@ -80,8 +80,8 @@ CPPUNIT_TARBALL := cppunit-1.15.1.tar.gz # three static lines # so that git cherry-pick # will not run into conflicts -CURL_SHA256SUM := 6fea2aac6a4610fbd0400afb0bcddbe7258a64c63f1f68e5855ebc0c659710cd -CURL_TARBALL := curl-8.7.1.tar.xz +CURL_SHA256SUM := 0f58bb95fc330c8a46eeb3df5701b0d90c9d9bfcc42bd1cd08791d12551d4400 +CURL_TARBALL := curl-8.8.0.tar.xz # three static lines # so that git cherry-pick # will not run into conflicts diff --git a/external/curl/curl-msvc-disable-protocols.patch.1 b/external/curl/curl-msvc-disable-protocols.patch.1 index 905a2d6a7ac3..1c74fa63381b 100644 --- a/external/curl/curl-msvc-disable-protocols.patch.1 +++ b/external/curl/curl-msvc-disable-protocols.patch.1 @@ -2,9 +2,9 @@ disable protocols nobody needs in MSVC build --- curl/lib/config-win32.h.orig 2017-08-09 16:43:29.46400 +0200 +++ curl/lib/config-win32.h2017-08-09 16:47:38.54920 +0200 -@@ -654,4 +654,20 @@ - # define ENABLE_IPV6 1 - #endif +@@ -509,4 +509,20 @@ + /* If you want to build curl with the built-in manual */ + #define USE_MANUAL 1 +#define CURL_DISABLE_DICT 1 +#define CURL_DISABLE_FILE 1
core.git: include/sfx2 sfx2/source
include/sfx2/bindings.hxx|2 +- sfx2/source/control/bindings.cxx |8 ++-- 2 files changed, 3 insertions(+), 7 deletions(-) New commits: commit 343ca5c8ae6f7216683c78b961816bf149f957a0 Author: Xisco Fauli AuthorDate: Wed May 22 10:01:14 2024 +0200 Commit: Xisco Fauli CommitDate: Wed May 22 12:22:47 2024 +0200 sfx2: bGlobalOnly is always false Change-Id: Iaba1a77ae0ac7537f1dbf05fa097b3235b36f64d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167921 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/include/sfx2/bindings.hxx b/include/sfx2/bindings.hxx index 2b85b4dbd065..2fac9d1048ef 100644 --- a/include/sfx2/bindings.hxx +++ b/include/sfx2/bindings.hxx @@ -101,7 +101,7 @@ friend class SfxBindings_Impl; private: SAL_DLLPRIVATE SfxPoolItemHolder Execute_Impl( sal_uInt16 nSlot, const SfxPoolItem **pArgs, sal_uInt16 nModi, -SfxCallMode nCall, const SfxPoolItem **pInternalArgs, bool bGlobalOnly=false); +SfxCallMode nCall, const SfxPoolItem **pInternalArgs); SAL_DLLPRIVATE void SetSubBindings_Impl( SfxBindings* ); SAL_DLLPRIVATE void UpdateSlotServer_Impl(); // Update SlotServer SAL_DLLPRIVATE std::optional CreateSet_Impl(SfxStateCache& rCache, const SfxSlot* , diff --git a/sfx2/source/control/bindings.cxx b/sfx2/source/control/bindings.cxx index 63c8e56080d6..659d72254868 100644 --- a/sfx2/source/control/bindings.cxx +++ b/sfx2/source/control/bindings.cxx @@ -876,7 +876,7 @@ bool SfxBindings::Execute( sal_uInt16 nId, const SfxPoolItem** ppItems, SfxCallM } SfxPoolItemHolder SfxBindings::Execute_Impl( sal_uInt16 nId, const SfxPoolItem** ppItems, sal_uInt16 nModi, SfxCallMode nCallMode, -const SfxPoolItem **ppInternalArgs, bool bGlobalOnly ) +const SfxPoolItem **ppInternalArgs ) { SfxStateCache *pCache = GetStateCache( nId ); if ( !pCache ) @@ -885,7 +885,7 @@ SfxPoolItemHolder SfxBindings::Execute_Impl( sal_uInt16 nId, const SfxPoolItem** while ( pBind ) { if ( pBind->GetStateCache( nId ) ) -return pBind->Execute_Impl( nId, ppItems, nModi, nCallMode, ppInternalArgs, bGlobalOnly ); +return pBind->Execute_Impl( nId, ppItems, nModi, nCallMode, ppInternalArgs ); pBind = pBind->pImpl->pSubBindings; } } @@ -944,10 +944,6 @@ SfxPoolItemHolder SfxBindings::Execute_Impl( sal_uInt16 nId, const SfxPoolItem** pSlot = pServer->GetSlot(); } -if ( bGlobalOnly ) -if ( dynamic_cast< const SfxModule *>( pShell ) == nullptr && dynamic_cast< const SfxApplication *>( pShell ) == nullptr && dynamic_cast< const SfxViewFrame *>( pShell ) == nullptr ) -return SfxPoolItemHolder(); - SfxItemPool = pShell->GetPool(); SfxRequest aReq( nId, nCallMode, rPool ); aReq.SetModifier( nModi );
core.git: sc/source
sc/source/ui/inc/tabvwsh.hxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 1ff9bc004e5df7d0dfbd7e58c0cbaadf225fb68d Author: Xisco Fauli AuthorDate: Tue May 21 14:23:16 2024 +0200 Commit: Xisco Fauli CommitDate: Tue May 21 21:36:07 2024 +0200 use SAL_RET_MAYBENULL in GetActiveViewShell() Change-Id: I739a9be7486978b19f34939c7d6d7bb2d1adbf77 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167899 Reviewed-by: Xisco Fauli Tested-by: Jenkins diff --git a/sc/source/ui/inc/tabvwsh.hxx b/sc/source/ui/inc/tabvwsh.hxx index e05e5370d84f..a3c0d728f90f 100644 --- a/sc/source/ui/inc/tabvwsh.hxx +++ b/sc/source/ui/inc/tabvwsh.hxx @@ -367,7 +367,7 @@ public: voidDeactivateOle(); -SC_DLLPUBLIC static ScTabViewShell* GetActiveViewShell(); +SAL_RET_MAYBENULL SC_DLLPUBLIC static ScTabViewShell* GetActiveViewShell(); std::shared_ptr CreateRefDialogController(SfxBindings* pB, SfxChildWindow* pCW, SfxChildWinInfo* pInfo,
core.git: sc/source
sc/source/ui/app/inputwin.cxx | 21 ++-- sc/source/ui/condformat/condformatdlgentry.cxx | 68 ++--- sc/source/ui/dialogs/searchresults.cxx | 20 ++- sc/source/ui/miscdlgs/mvtabdlg.cxx | 16 +-- sc/source/ui/namedlg/namedefdlg.cxx|8 - sc/source/ui/namedlg/namedlg.cxx |4 sc/source/ui/undo/undoblk.cxx | 55 +- sc/source/ui/undo/undodat.cxx | 129 - sc/source/ui/undo/undotab.cxx | 33 +- sc/source/ui/view/tabvwsh4.cxx |2 10 files changed, 219 insertions(+), 137 deletions(-) New commits: commit 860d11230d67900238f97a06fd2ebd0262c16ae4 Author: Xisco Fauli AuthorDate: Tue May 21 17:22:53 2024 +0200 Commit: Xisco Fauli CommitDate: Tue May 21 21:35:50 2024 +0200 sc: check GetActiveViewShell() See the recently introduced https://crashreport.libreoffice.org/stats/crash_details/3da2dcd1-ca3e-409a-a665-dcb09d2a3ba0 Change-Id: If6ddc71bc2946232d57d5fd8fd6029b45b19495f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167903 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/sc/source/ui/app/inputwin.cxx b/sc/source/ui/app/inputwin.cxx index 3aa9a36c5af0..f39139b7b6e7 100644 --- a/sc/source/ui/app/inputwin.cxx +++ b/sc/source/ui/app/inputwin.cxx @@ -799,9 +799,11 @@ void ScInputWindow::MouseButtonDown( const MouseEvent& rMEvt ) // I'd prefer to leave at least a single column header and a // row but I don't know how to get that value in pixels. // Use TOOLBOX_WINDOW_HEIGHT for the moment -ScTabViewShell* pViewSh = ScTabViewShell::GetActiveViewShell(); -mnMaxY = GetOutputSizePixel().Height() + (pViewSh->GetGridHeight(SC_SPLIT_TOP) - + pViewSh->GetGridHeight(SC_SPLIT_BOTTOM)) - TOOLBOX_WINDOW_HEIGHT; +if (ScTabViewShell* pViewSh = ScTabViewShell::GetActiveViewShell()) +{ +mnMaxY = GetOutputSizePixel().Height() + (pViewSh->GetGridHeight(SC_SPLIT_TOP) + + pViewSh->GetGridHeight(SC_SPLIT_BOTTOM)) - TOOLBOX_WINDOW_HEIGHT; +} } } @@ -1720,7 +1722,6 @@ bool ScTextWnd::Command( const CommandEvent& rCEvt ) if (m_xEditView) { ScModule* pScMod = SC_MOD(); -ScTabViewShell* pStartViewSh = ScTabViewShell::GetActiveViewShell(); // don't modify the font defaults here - the right defaults are // already set in StartEditEngine when the EditEngine is created @@ -1738,6 +1739,7 @@ bool ScTextWnd::Command( const CommandEvent& rCEvt ) { // Is dragged onto another View? ScTabViewShell* pEndViewSh = ScTabViewShell::GetActiveViewShell(); +ScTabViewShell* pStartViewSh = ScTabViewShell::GetActiveViewShell(); if ( pEndViewSh != pStartViewSh && pStartViewSh != nullptr ) { ScViewData& rViewData = pStartViewSh->GetViewData(); @@ -2663,11 +2665,12 @@ void ScPosWnd::DoEnter() if (bOpenManageNamesDialog) { const sal_uInt16 nId = ScNameDlgWrapper::GetChildWindowId(); -ScTabViewShell* pViewSh = ScTabViewShell::GetActiveViewShell(); -assert(pViewSh); -SfxViewFrame& rViewFrm = pViewSh->GetViewFrame(); -SfxChildWindow* pWnd = rViewFrm.GetChildWindow( nId ); -SC_MOD()->SetRefDialog( nId, pWnd == nullptr ); +if (ScTabViewShell* pViewSh = ScTabViewShell::GetActiveViewShell()) +{ +SfxViewFrame& rViewFrm = pViewSh->GetViewFrame(); +SfxChildWindow* pWnd = rViewFrm.GetChildWindow( nId ); +SC_MOD()->SetRefDialog( nId, pWnd == nullptr ); +} } } diff --git a/sc/source/ui/condformat/condformatdlgentry.cxx b/sc/source/ui/condformat/condformatdlgentry.cxx index 88de0f73a606..01d13c821981 100644 --- a/sc/source/ui/condformat/condformatdlgentry.cxx +++ b/sc/source/ui/condformat/condformatdlgentry.cxx @@ -446,43 +446,45 @@ void StyleSelect(weld::Window* pDialogParent, weld::ComboBox& rLbStyle, const Sc // unlock the dispatcher so SID_STYLE_NEW can be executed // (SetDispatcherLock would affect all Calc documents) -ScTabViewShell* pViewShell = ScTabViewShell::GetActiveViewShell(); -SfxDispatcher* pDisp = pViewShell->GetDispatcher(); -bool bLocked = pDisp->IsLocked(); -if (bLocked) -pDisp->Lock(false); - -// Execute the "new style" slot, complete with undo and all necessary updates. -// The return value (SfxUInt16Item) is ignored, look for new styles instead. -pDisp->ExecuteList(SID_STYLE_NEW, -SfxCallMode::SYNCHRON | SfxCallMode::RECORD, -{ , }, { }); - -if (bLocked) -
core.git: Branch 'libreoffice-24-2' - download.lst
download.lst |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) New commits: commit 75daf23752587c4d4d6ee2dfa697596762ed2321 Author: Xisco Fauli AuthorDate: Mon May 20 11:09:45 2024 +0200 Commit: Eike Rathke CommitDate: Tue May 21 11:34:30 2024 +0200 update language-subtag-registry to 2024-05-16 How the file was created: mkdir data cd data wget https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry cd .. tar cvjf language-subtag-registry-2024-05-16.tar.bz data/language-subtag-registry Change-Id: I1070881fac9d88508e58715c9a87d547ddf86a50 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167860 Tested-by: Jenkins Reviewed-by: Xisco Fauli (cherry picked from commit 02c01942328bd40183a61c054c00d8b292f9dfd0) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167822 Reviewed-by: Eike Rathke diff --git a/download.lst b/download.lst index 03075fb36e83..d3dad6bdbe82 100644 --- a/download.lst +++ b/download.lst @@ -359,8 +359,8 @@ LIBJPEG_TURBO_TARBALL := libjpeg-turbo-2.1.5.1.tar.gz # three static lines # so that git cherry-pick # will not run into conflicts -LANGTAGREG_SHA256SUM := 642c1c8e08aa79884f3d0fe15c0f5866e6fb6828af22c3c9c1fe3827f99e58cc -LANGTAGREG_TARBALL := language-subtag-registry-2024-03-07.tar.bz2 +LANGTAGREG_SHA256SUM := 9090265f2bb0f4fb20ec1f7357062c033b9556b362b70c441985c1c905dd9a73 +LANGTAGREG_TARBALL := language-subtag-registry-2024-05-16.tar.bz2 # three static lines # so that git cherry-pick # will not run into conflicts
core.git: download.lst
download.lst |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) New commits: commit 02c01942328bd40183a61c054c00d8b292f9dfd0 Author: Xisco Fauli AuthorDate: Mon May 20 11:09:45 2024 +0200 Commit: Xisco Fauli CommitDate: Mon May 20 15:30:02 2024 +0200 update language-subtag-registry to 2024-05-16 How the file was created: mkdir data cd data wget https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry cd .. tar cvjf language-subtag-registry-2024-05-16.tar.bz data/language-subtag-registry Change-Id: I1070881fac9d88508e58715c9a87d547ddf86a50 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167860 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/download.lst b/download.lst index 2617cf009d3e..570ed2258157 100644 --- a/download.lst +++ b/download.lst @@ -359,8 +359,8 @@ LIBJPEG_TURBO_TARBALL := libjpeg-turbo-2.1.5.1.tar.gz # three static lines # so that git cherry-pick # will not run into conflicts -LANGTAGREG_SHA256SUM := 642c1c8e08aa79884f3d0fe15c0f5866e6fb6828af22c3c9c1fe3827f99e58cc -LANGTAGREG_TARBALL := language-subtag-registry-2024-03-07.tar.bz2 +LANGTAGREG_SHA256SUM := 9090265f2bb0f4fb20ec1f7357062c033b9556b362b70c441985c1c905dd9a73 +LANGTAGREG_TARBALL := language-subtag-registry-2024-05-16.tar.bz2 # three static lines # so that git cherry-pick # will not run into conflicts
core.git: Branch 'libreoffice-24-2' - svgio/inc svgio/qa svgio/source
svgio/inc/svgstyleattributes.hxx |7 + svgio/qa/cppunit/SvgImportTest.cxx|8 + svgio/qa/cppunit/data/contextFill.svg |8 + svgio/source/svgreader/svgstyleattributes.cxx | 36 -- 4 files changed, 57 insertions(+), 2 deletions(-) New commits: commit e9cec488461b1610091f43b4a837e2338fd1cf91 Author: Xisco Fauli AuthorDate: Mon May 6 17:15:59 2024 +0200 Commit: Caolán McNamara CommitDate: Sat May 18 22:29:28 2024 +0200 tdf#155651: Add support for "context-fill" Change-Id: I6f96cc7c059ece5f9401fc0ae552cf279e53109c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167230 Reviewed-by: Xisco Fauli Tested-by: Jenkins (cherry picked from commit 3b0f96a0773f19f7d5bdb5725ff9667eb4809215) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167218 Reviewed-by: Caolán McNamara diff --git a/svgio/inc/svgstyleattributes.hxx b/svgio/inc/svgstyleattributes.hxx index 61a3816e82cb..30cbab965644 100644 --- a/svgio/inc/svgstyleattributes.hxx +++ b/svgio/inc/svgstyleattributes.hxx @@ -247,6 +247,9 @@ namespace svgio::svgreader // #121221# Defines if evtl. an empty array *is* set boolmbStrokeDasharraySet : 1; +// tdf#155651 Defines if 'context-fill' is used in fill +boolmbContextFill : 1; + // tdf#155651 Defines if 'context-stroke' is used in stroke boolmbContextStroke : 1; @@ -254,6 +257,7 @@ namespace svgio::svgreader OUStringmaNodeFillURL; OUStringmaNodeStrokeURL; +const basegfx::BColor* maContextFill; const basegfx::BColor* maContextStroke; /// internal helpers @@ -332,6 +336,9 @@ namespace svgio::svgreader /// stroke content const basegfx::BColor* getStroke() const; +/// context fill content +const basegfx::BColor* getContextFill() const; + /// context stroke content const basegfx::BColor* getContextStroke() const; diff --git a/svgio/qa/cppunit/SvgImportTest.cxx b/svgio/qa/cppunit/SvgImportTest.cxx index b4aa5250f5ec..bc99c672b4b6 100644 --- a/svgio/qa/cppunit/SvgImportTest.cxx +++ b/svgio/qa/cppunit/SvgImportTest.cxx @@ -669,6 +669,14 @@ CPPUNIT_TEST_FIXTURE(Test, testMarkerOrient) assertXPath(pDocument, "/primitive2D/transform/transform[2]"_ostr, "xy33"_ostr, "1"); } +CPPUNIT_TEST_FIXTURE(Test, testContextFill) +{ +xmlDocUniquePtr pDocument = dumpAndParseSvg(u"/svgio/qa/cppunit/data/contextFill.svg"); + +assertXPath(pDocument, "/primitive2D/transform/polypolygonstroke/line"_ostr, "color"_ostr, "#ff"); +assertXPath(pDocument, "/primitive2D/transform/transform/polypolygoncolor"_ostr, "color"_ostr, "#ff"); +} + CPPUNIT_TEST_FIXTURE(Test, testContextStroke) { xmlDocUniquePtr pDocument = dumpAndParseSvg(u"/svgio/qa/cppunit/data/contextStroke.svg"); diff --git a/svgio/qa/cppunit/data/contextFill.svg b/svgio/qa/cppunit/data/contextFill.svg new file mode 100644 index ..399d3c16b09e --- /dev/null +++ b/svgio/qa/cppunit/data/contextFill.svg @@ -0,0 +1,8 @@ +http://www.w3.org/2000/svg;> + + + + + + + diff --git a/svgio/source/svgreader/svgstyleattributes.cxx b/svgio/source/svgreader/svgstyleattributes.cxx index eee09889c226..42e19c51fcd5 100644 --- a/svgio/source/svgreader/svgstyleattributes.cxx +++ b/svgio/source/svgreader/svgstyleattributes.cxx @@ -817,6 +817,11 @@ namespace svgio::svgreader rMarkerTransform.identity(); rClipRange.reset(); +// Set the current fill to the marker before calling getMarkerPrimitives, +// which calls decomposeSvgNode to decompose the children of the marker. +// If any of the children uses 'fill="context-fill"', then it will use it + const_cast(rMarker.getSvgStyleAttributes())->maContextFill = getFill(); + // Set the current stroke to the marker before calling getMarkerPrimitives, // which calls decomposeSvgNode to decompose the children of the marker. // If any of the children uses 'stroke="context-stroke"', then it will use it @@ -1292,9 +1297,11 @@ namespace svgio::svgreader maBaselineShift(BaselineShift::Baseline), maBaselineShiftNumber(0), maDominantBaseline(DominantBaseline::Auto), -maResolvingParent(33, 0), +maResolvingParent(34, 0), mbStrokeDasharraySet(false), +mbContextFill(false), mbContextStroke(false), +maContextFill(nullptr), maContextStroke(nullptr)
core.git: download.lst external/beanshell
download.lst|4 ++-- external/beanshell/ExternalPackage_beanshell.mk |2 +- external/beanshell/UnpackedTarball_beanshell.mk |2 +- external/beanshell/beanshell-invoke.patch | 20 +--- external/beanshell/bsh-2.0b1-src.patch | 10 +- external/beanshell/java9.patch.0| 24 +--- 6 files changed, 23 insertions(+), 39 deletions(-) New commits: commit 9f025bdad98dfa2e806391142844a727a2014aac Author: Xisco Fauli AuthorDate: Thu May 16 20:59:03 2024 +0200 Commit: Xisco Fauli CommitDate: Fri May 17 11:50:35 2024 +0200 beanshell: upgrade to 2.1.1 * Adapt external/beanshell/java9.patch.0 to fix [javac] error: Source option 6 is no longer supported. Use 7 or later. [javac] error: Target option 6 is no longer supported. Use 7 or later. Downloaded from https://github.com/beanshell/beanshell/releases/download/2.1.1/bsh-2.1.1-src.zip Change-Id: I969813fd2bb2a910004b6c28f5ed9ba95c39895f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167764 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/download.lst b/download.lst index de788488bbc6..2617cf009d3e 100644 --- a/download.lst +++ b/download.lst @@ -29,8 +29,8 @@ BREAKPAD_TARBALL := breakpad-b324760c7f53667af128a6b77b790323da04fcb9.tar.xz # three static lines # so that git cherry-pick # will not run into conflicts -BSH_SHA256SUM := 9e93c73e23aff644b17dfff65674c14150e7f3b38b19635e622235e01c96 -BSH_TARBALL := beeca87be45ec87d241ddd0e1bad80c1-bsh-2.0b6-src.zip +BSH_SHA256SUM := 2248387ceaa319840434a3547a8b2fec12f95a8418ee039ce5ff5726053a139c +BSH_TARBALL := bsh-2.1.1-src.zip # three static lines # so that git cherry-pick # will not run into conflicts diff --git a/external/beanshell/ExternalPackage_beanshell.mk b/external/beanshell/ExternalPackage_beanshell.mk index ea22d839410d..b0f6b007e7ac 100644 --- a/external/beanshell/ExternalPackage_beanshell.mk +++ b/external/beanshell/ExternalPackage_beanshell.mk @@ -11,6 +11,6 @@ $(eval $(call gb_ExternalPackage_ExternalPackage,beanshell,beanshell)) $(eval $(call gb_ExternalPackage_use_external_project,beanshell,beanshell)) -$(eval $(call gb_ExternalPackage_add_file,beanshell,$(LIBO_SHARE_JAVA_FOLDER)/bsh.jar,dist/bsh-2.0b6.jar)) +$(eval $(call gb_ExternalPackage_add_file,beanshell,$(LIBO_SHARE_JAVA_FOLDER)/bsh.jar,dist/bsh-2.1.1.jar)) # vim: set noet sw=4 ts=4: diff --git a/external/beanshell/UnpackedTarball_beanshell.mk b/external/beanshell/UnpackedTarball_beanshell.mk index dc0ce6dc6cb5..77b45697be77 100644 --- a/external/beanshell/UnpackedTarball_beanshell.mk +++ b/external/beanshell/UnpackedTarball_beanshell.mk @@ -12,7 +12,7 @@ $(eval $(call gb_UnpackedTarball_UnpackedTarball,beanshell)) $(eval $(call gb_UnpackedTarball_set_tarball,beanshell,$(BSH_TARBALL),,beanshell)) $(eval $(call gb_UnpackedTarball_fix_end_of_line,beanshell,\ - engine/src/TestBshScriptEngine.java \ + engine/src/bsh/TestBshScriptEngine.java \ )) $(eval $(call gb_UnpackedTarball_add_patches,beanshell,\ diff --git a/external/beanshell/beanshell-invoke.patch b/external/beanshell/beanshell-invoke.patch index b78f1db61642..5c5e04d0cec9 100644 --- a/external/beanshell/beanshell-invoke.patch +++ b/external/beanshell/beanshell-invoke.patch @@ -1,6 +1,6 @@ --- old/beanshell/engine/src/bsh/engine/BshScriptEngine.java +++ new/beanshell/engine/src/bsh/engine/BshScriptEngine.java -@@ -229,6 +229,12 @@ +@@ -281,6 +281,11 @@ } } @@ -9,12 +9,11 @@ + { + return invokeMethod( thiz, name, args ); + } -+ + /** -* Same as invoke(Object, String, Object...) with null as the -* first argument. Used to call top-level procedures defined in scripts. -@@ -249,6 +255,12 @@ - return invokeMethod( getGlobal(), name, args ); +* Same as invoke(Object, String, Object...) with {@code null} as the +@@ -298,6 +303,11 @@ + return invokeMethod(getGlobal(), name, args); } + public Object invoke( String name, Object... args ) @@ -22,12 +21,11 @@ + { + return invokeFunction( name, args ); + } -+ - /** + + /** * Returns an implementation of an interface using procedures compiled in the -* interpreter. The methods of the interface may be implemented using the old/beanshell/engine/src/TestBshScriptEngine.java -+++ new/beanshell/engine/src/TestBshScriptEngine.java +--- old/beanshell/engine/src/bsh/TestBshScriptEngine.java new/beanshell/engine/src/bsh/TestBshScriptEngine.java @@ -2,11 +2,12 @@ import java.io.*; import javax.script.*; diff --git a/external/beanshell/bsh-2.0b1-src.patch b/external/beanshell/bsh-2.0b1-src.patch index 6124f18d197f..a62517ea1ed7 100644 --- a/external/beanshell/bsh-2.0b1-src.patch +++ b/external/beanshell/bsh-2.0b1
core.git: Branch 'libreoffice-24-2' - 2 commits - sw/source
sw/source/core/draw/dview.cxx| 31 +-- sw/source/core/frmedt/fefly1.cxx |4 ++-- 2 files changed, 19 insertions(+), 16 deletions(-) New commits: commit 79be57a37c5db33dc25f22d90e5fe54cca1e0bd8 Author: Xisco Fauli AuthorDate: Tue Apr 30 10:07:23 2024 +0200 Commit: Christian Lohmaier CommitDate: Thu May 16 19:59:08 2024 +0200 Fix UBSan failure (part 2) Introduced by 495b5db74f0db59395ff68bacc8d8ca67595b66e "sw: check GetUserCall" https: //gerrit.libreoffice.org/c/core/+/166824/comments/8db24a41_2f4e7e4e Change-Id: Ib6f981aa3055f0d37d0b83e3284842d310fe6ef0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166913 Tested-by: Jenkins Reviewed-by: Xisco Fauli Signed-off-by: Xisco Fauli Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167002 Reviewed-by: Christian Lohmaier diff --git a/sw/source/core/frmedt/fefly1.cxx b/sw/source/core/frmedt/fefly1.cxx index 644c5ccf0e40..d6ff8b296908 100644 --- a/sw/source/core/frmedt/fefly1.cxx +++ b/sw/source/core/frmedt/fefly1.cxx @@ -386,7 +386,7 @@ const SwFrameFormat* SwFEShell::IsFlyInFly() return nullptr; SdrObject *pObj = rMrkList.GetMark( 0 )->GetMarkedSdrObj(); -SwDrawContact *pContact = static_cast(GetUserCall(pObj)); +SwContact* pContact = GetUserCall( pObj ); if (!pContact) return nullptr; @@ -400,7 +400,7 @@ const SwFrameFormat* SwFEShell::IsFlyInFly() } else { -pFly = pContact->GetAnchorFrame(pObj); +pFly = static_cast(pContact)->GetAnchorFrame(pObj); } OSL_ENSURE( pFly, "IsFlyInFly: Where's my anchor?" ); commit 118bde319d10c54a3a6ee53077740406fb07fc13 Author: Xisco Fauli AuthorDate: Mon Apr 29 09:54:12 2024 +0200 Commit: Christian Lohmaier CommitDate: Thu May 16 19:58:56 2024 +0200 Fix UBSan failure Introduced by 495b5db74f0db59395ff68bacc8d8ca67595b66e "sw: check GetUserCall" https://ci.libreoffice.org/job/lo_ubsan/3154/consoleFull#-1571115798d893063f-7f3d-4b7e-b56f-4e0f225817cd Change-Id: Ifc80312890f2e6b82dcc9419b5b7e8bfcd5340a5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166824 Tested-by: Jenkins Reviewed-by: Xisco Fauli Signed-off-by: Xisco Fauli Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167001 Reviewed-by: Christian Lohmaier diff --git a/sw/source/core/draw/dview.cxx b/sw/source/core/draw/dview.cxx index 39ecb982c00c..5499dad7c9ca 100644 --- a/sw/source/core/draw/dview.cxx +++ b/sw/source/core/draw/dview.cxx @@ -706,13 +706,10 @@ const SwFrame* SwDrawView::CalcAnchor() return nullptr; SdrObject* pObj = rMrkList.GetMark( 0 )->GetMarkedSdrObj(); -SwDrawContact* pContact = static_cast(GetUserCall(pObj)); -if (!pContact) -return nullptr; //Search for paragraph bound objects, otherwise only the //current anchor. Search only if we currently drag. -const SwFrame* pAnch; +const SwFrame* pAnch = nullptr; tools::Rectangle aMyRect; auto pFlyDrawObj = dynamic_cast( pObj ); if ( pFlyDrawObj ) @@ -724,13 +721,16 @@ const SwFrame* SwDrawView::CalcAnchor() { // determine correct anchor position for 'virtual' drawing objects. // #i26791# -pAnch = pContact->GetAnchorFrame( pObj ); -if( !pAnch ) +if (SwDrawContact* pContact = static_cast(GetUserCall(pObj))) { -pContact->ConnectToLayout(); -// determine correct anchor position for 'virtual' drawing objects. -// #i26791# pAnch = pContact->GetAnchorFrame( pObj ); +if( !pAnch ) +{ +pContact->ConnectToLayout(); +// determine correct anchor position for 'virtual' drawing objects. +// #i26791# +pAnch = pContact->GetAnchorFrame( pObj ); +} } aMyRect = pObj->GetSnapRect(); } @@ -765,11 +765,14 @@ const SwFrame* SwDrawView::CalcAnchor() { const SwRect aRect( aPt.getX(), aPt.getY(), 1, 1 ); -if ( pContact->GetAnchorFrame( pObj ) && - pContact->GetAnchorFrame( pObj )->IsPageFrame() ) -pAnch = pContact->GetPageFrame(); -else -pAnch = pContact->FindPage( aRect ); +if (SwDrawContact* pContact = static_cast(GetUserCall(pObj))) +{ +if ( pContact->GetAnchorFrame( pObj ) && + pContact->GetAnchorFrame( pObj )->IsPageFrame() ) +pAnch = pContact->GetPageFrame(); +else +pAnch = pContact->FindPage( aRect ); +} } } if( pAnch && !pAnch->IsProtected() )
core.git: Branch 'libreoffice-24-2' - sw/source
sw/source/core/access/accfrmobj.cxx | 15 ++- sw/source/core/doc/docdraw.cxx | 12 +++ sw/source/core/draw/dview.cxx| 108 --- sw/source/core/frmedt/fecopy.cxx | 25 +++--- sw/source/core/frmedt/fefly1.cxx | 13 ++- sw/source/core/frmedt/feshview.cxx | 37 ++--- sw/source/core/layout/anchoreddrawobject.cxx |4 + sw/source/core/layout/anchoredobject.cxx | 11 +- sw/source/core/layout/fly.cxx|4 - sw/source/core/layout/flylay.cxx | 41 +- sw/source/core/layout/frmtool.cxx| 40 ++ sw/source/core/layout/pagechg.cxx| 19 ++-- sw/source/core/layout/trvlfrm.cxx| 39 + sw/source/core/txtnode/atrflyin.cxx |3 sw/source/core/undo/undraw.cxx | 31 --- 15 files changed, 242 insertions(+), 160 deletions(-) New commits: commit 67af2cc487450a274ae7ba988249c9c362eaa95d Author: Xisco Fauli AuthorDate: Thu Apr 25 18:15:12 2024 +0200 Commit: Christian Lohmaier CommitDate: Thu May 16 19:58:34 2024 +0200 sw: check GetUserCall It might return nullptr See https://crashreport.libreoffice.org/stats/signature/SwFEShell::ShouldObjectBeSelected(Point%20const%20&) Change-Id: Ia0ed355a7eb9084b9f57163ffbfe6b549c8bdb3f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166642 Tested-by: Jenkins Reviewed-by: Xisco Fauli (cherry picked from commit 495b5db74f0db59395ff68bacc8d8ca67595b66e) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166710 Reviewed-by: Christian Lohmaier diff --git a/sw/source/core/access/accfrmobj.cxx b/sw/source/core/access/accfrmobj.cxx index f78dc2d155db..004ca4ab94e0 100644 --- a/sw/source/core/access/accfrmobj.cxx +++ b/sw/source/core/access/accfrmobj.cxx @@ -240,13 +240,16 @@ SwRect SwAccessibleChild::GetBox( const SwAccessibleMap& rAccMap ) const // by the mpFrame case above b) for genuine SdrObject this must be set // if it's connected to layout assert(dynamic_cast(pContact)); -SwPageFrame const*const pPage(const_cast( -pContact->GetAnchoredObj(mpDrawObj))->FindPageFrameOfAnchor()); -if (pPage) // may end up here with partial layout -> not visible +if (pContact) { -aBox = SwRect( mpDrawObj->GetCurrentBoundRect() ); -// tdf#91260 drawing object may be partially off-page -aBox.Intersection(pPage->getFrameArea()); +SwPageFrame const*const pPage(const_cast( +pContact->GetAnchoredObj(mpDrawObj))->FindPageFrameOfAnchor()); +if (pPage) // may end up here with partial layout -> not visible +{ +aBox = SwRect( mpDrawObj->GetCurrentBoundRect() ); +// tdf#91260 drawing object may be partially off-page +aBox.Intersection(pPage->getFrameArea()); +} } } else if ( mpWindow ) diff --git a/sw/source/core/doc/docdraw.cxx b/sw/source/core/doc/docdraw.cxx index 521ca2b0ba15..09b1d9afb697 100644 --- a/sw/source/core/doc/docdraw.cxx +++ b/sw/source/core/doc/docdraw.cxx @@ -68,6 +68,9 @@ static void lcl_AdjustPositioningAttr( SwDrawFrameFormat* _pFrameFormat, const SwContact* pContact = GetUserCall( &_rSdrObj ); OSL_ENSURE( pContact, " - missing contact object." ); +if (!pContact) +return; + // determine position of new group object relative to its anchor frame position SwTwips nHoriRelPos = 0; SwTwips nVertRelPos = 0; @@ -195,6 +198,9 @@ SwDrawContact* SwDoc::GroupSelection( SdrView& rDrawView ) // Revoke anchor attribute. SwDrawContact *pMyContact = static_cast(GetUserCall(pObj)); +if (!pMyContact) +return pNewContact; + const SwFormatAnchor aAnch( pMyContact->GetFormat()->GetAnchor() ); std::unique_ptr pUndo; @@ -216,6 +222,9 @@ SwDrawContact* SwDoc::GroupSelection( SdrView& rDrawView ) pObj = rMrkList.GetMark( i )->GetMarkedSdrObj(); SwDrawContact *pContact = static_cast(GetUserCall(pObj)); +if (!pContact) +continue; + // #i53320# #if OSL_DEBUG_LEVEL > 0 SwAnchoredDrawObject* pAnchoredDrawObj = @@ -352,6 +361,9 @@ void SwDoc::UnGroupSelection( SdrView& rDrawView ) { SwDrawContact *pContact = static_cast(GetUserCall(pObj)); +if (!pContact) +continue; + std::shared_ptr pTextBoxNode; if (auto pGroupFormat = pContact->GetFormat()) pTextBoxNode = pGroupFormat->GetOtherTextBoxFormats(); diff --git a/sw/source/core/draw/dview.cxx b/sw/source/core/draw/dview.cxx in
core.git: external/lpsolve
external/lpsolve/UnpackedTarball_lpsolve.mk |1 external/lpsolve/lp_solve-fixed-warn.patch | 84 2 files changed, 85 deletions(-) New commits: commit f85f2a1fffaeb9fdd0ec5247dd3a414133d5991b Author: Xisco Fauli AuthorDate: Wed May 15 18:11:27 2024 +0200 Commit: Xisco Fauli CommitDate: Wed May 15 21:28:22 2024 +0200 lpsolve: remove obsolete dmake patch Added with 249a4da9cd5217b0c340edd779bd17e44e21d678 "warn free build of dmake, concat-deps and lpsolve" Change-Id: I1c8eb1e4882526749fe5f46906cdea05e62386a8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167698 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/external/lpsolve/UnpackedTarball_lpsolve.mk b/external/lpsolve/UnpackedTarball_lpsolve.mk index 62a182dc7517..bcb885fb9186 100644 --- a/external/lpsolve/UnpackedTarball_lpsolve.mk +++ b/external/lpsolve/UnpackedTarball_lpsolve.mk @@ -23,7 +23,6 @@ $(eval $(call gb_UnpackedTarball_add_patches,lpsolve,\ else $(eval $(call gb_UnpackedTarball_add_patches,lpsolve,\ - external/lpsolve/lp_solve-fixed-warn.patch \ external/lpsolve/lp_solve_5.5.patch \ external/lpsolve/lpsolve-ubsan.patch.0 \ )) diff --git a/external/lpsolve/lp_solve-fixed-warn.patch b/external/lpsolve/lp_solve-fixed-warn.patch deleted file mode 100644 index 46742887a85f.. --- a/external/lpsolve/lp_solve-fixed-warn.patch +++ /dev/null @@ -1,84 +0,0 @@ misc/build/lp_solve_5.5/lp_report.c2007-01-14 10:31:34.0 -0800 -+++ misc/build/lp_solve_5.5/lp_report.c2007-01-14 10:31:34.0 -0800 -@@ -160,7 +160,7 @@ - { - int i, k = 0; - -- fprintf(output, label); -+ fputs(label, output); - fprintf(output, " "); - for(i = first; i <= last; i++) { - fprintf(output, " %18g", vector[i]); -@@ -189,7 +189,7 @@ - if(last < 0) - last = lp->rows; - -- fprintf(output, label); -+ fputs(label, output); - fprintf(output, " "); - - if(first == 0) { -@@ -254,7 +254,7 @@ - if(last < 0) - last = lp->rows; - -- fprintf(output, label); -+ fputs(label, output); - fprintf(output, " "); - - for(i = first; i <= last; i++) { misc/build/lp_solve_5.5/lp_rlp.h 2007-01-14 10:31:52.0 -0800 -+++ misc/build/lp_solve_5.5/lp_rlp.h 2007-01-14 10:31:52.0 -0800 -@@ -615,7 +615,7 @@ - /* This used to be an fputs(), but since the string might contain NUL's, - * we now use fwrite(). - */ --#define ECHO (void) fwrite( lp_yytext, lp_yyleng, 1, lp_yyout ) -+#define ECHO if(fwrite( lp_yytext, lp_yyleng, 1, lp_yyout ) != 1) YY_FATAL_ERROR( "can't write into lp_yytext" ) - #endif - - /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL, misc/build/lp_solve_5.5/shared/commonlib.c 2007-01-14 10:33:14.0 -0800 -+++ misc/build/lp_solve_5.5/shared/commonlib.c 2007-01-14 10:33:14.0 -0800 -@@ -715,7 +715,7 @@ - { - int i, k = 0; - -- fprintf(output, label); -+ fputs(label, output); - fprintf(output, " "); - for(i = first; i <= last; i++) { - fprintf(output, " %5d", myvector[i]); -@@ -734,7 +734,7 @@ - { - int i, k = 0; - -- fprintf(output, label); -+ fputs(label, output); - fprintf(output, " "); - for(i = first; i <= last; i++) { - if(asRaw) -@@ -756,7 +756,7 @@ - { - int i, k = 0; - -- fprintf(output, label); -+ fputs(label, output); - fprintf(output, " "); - for(i = first; i <= last; i++) { - fprintf(output, " %18g", myvector[i]); misc/build/lp_solve_5.5/shared/mmio.c 2007-01-14 10:33:14.0 -0800 -+++ misc/build/lp_solve_5.5/shared/mmio.c 2007-01-14 10:33:14.0 -0800 -@@ -74,7 +74,11 @@ - - for (i=0; i
core.git: download.lst external/java_websocket
download.lst |4 ++-- external/java_websocket/patches/no-slf4j.patch |2 +- 2 files changed, 3 insertions(+), 3 deletions(-) New commits: commit 4527af4388dae61c4cc5feabd40c0a04e32c8a98 Author: Xisco Fauli AuthorDate: Wed May 15 13:03:48 2024 +0200 Commit: Xisco Fauli CommitDate: Wed May 15 18:17:25 2024 +0200 Java-WebSocket: Upgrade to 1.5.6 Downloaded from https://github.com/TooTallNate/Java-WebSocket/archive/refs/tags/v1.5.6.tar.gz Change-Id: Ie6c86b3f7e41147133919daca699a6c96372e44f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167665 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/download.lst b/download.lst index b03b332fcd70..de788488bbc6 100644 --- a/download.lst +++ b/download.lst @@ -324,8 +324,8 @@ ICU_DATA_TARBALL := icu4c-74_1-data.zip # three static lines # so that git cherry-pick # will not run into conflicts -JAVA_WEBSOCKET_SHA256SUM := a6828b35d1f938fee2335945f3d3c563cbbfa58ce7eb0bf72778d0fa7a550720 -JAVA_WEBSOCKET_TARBALL := Java-WebSocket-1.5.4.tar.gz +JAVA_WEBSOCKET_SHA256SUM := 167e86561cd7b5ed21b67d7543536134edcb14b373892739b28c417566a3832f +JAVA_WEBSOCKET_TARBALL := Java-WebSocket-1.5.6.tar.gz # three static lines # so that git cherry-pick # will not run into conflicts diff --git a/external/java_websocket/patches/no-slf4j.patch b/external/java_websocket/patches/no-slf4j.patch index 27296071eff7..cb6788b53405 100644 --- a/external/java_websocket/patches/no-slf4j.patch +++ b/external/java_websocket/patches/no-slf4j.patch @@ -326,7 +326,7 @@ diff -ru a/src/main/java/org/java_websocket/server/WebSocketServer.java b/src/ma +import java.util.logging.Logger; /** - * WebSocketServer is an abstract class that only takes care of the + * WebSocketServer is an abstract class that only takes care of the @@ -84,7 +83,7 @@ * * @since 1.4.0
core.git: download.lst
download.lst |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) New commits: commit bb2655206a1a2684ead8038601c70f4389a5d7aa Author: Xisco Fauli AuthorDate: Tue May 14 09:53:07 2024 +0200 Commit: Xisco Fauli CommitDate: Tue May 14 16:09:31 2024 +0200 libcmis: upgrade to 0.6.2 Downloaded from https://github.com/tdf/libcmis/releases/download/v0.6.2/libcmis-0.6.2.tar.xz Change-Id: I96f00da6a102bf720705060df009f57c6b93b1e4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167626 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/download.lst b/download.lst index 19b2a9315ec9..b03b332fcd70 100644 --- a/download.lst +++ b/download.lst @@ -65,8 +65,8 @@ DTOA_TARBALL := dtoa-20180411.tgz # three static lines # so that git cherry-pick # will not run into conflicts -LIBCMIS_SHA256SUM := d54d19d86153dbc88e2d468f7136269a2cfe71b73227e12fded01d29ac268074 -LIBCMIS_TARBALL := libcmis-0.6.1.tar.xz +LIBCMIS_SHA256SUM := 1b5c2d7258ff93eb5f9958ff0e4dfd7332dc75a071bb717dde2217a26602a644 +LIBCMIS_TARBALL := libcmis-0.6.2.tar.xz # three static lines # so that git cherry-pick # will not run into conflicts
core.git: download.lst
download.lst |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) New commits: commit 461dac862c6e8ceb71d4b46ae43c9073b344fcea Author: Xisco Fauli AuthorDate: Tue May 14 09:33:15 2024 +0200 Commit: Xisco Fauli CommitDate: Tue May 14 14:19:38 2024 +0200 harfbuzz: Upgrade to 8.5.0 Downloaded from https://github.com/harfbuzz/harfbuzz/releases/download/8.5.0/harfbuzz-8.5.0.tar.xz Change-Id: I1a6df8f5ecb91d93a88c9b6770e603c8df4bc2de Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167623 Reviewed-by: Xisco Fauli Tested-by: Jenkins diff --git a/download.lst b/download.lst index 30346ac91206..19b2a9315ec9 100644 --- a/download.lst +++ b/download.lst @@ -292,8 +292,8 @@ GRAPHITE_TARBALL := graphite2-minimal-1.3.14.tgz # three static lines # so that git cherry-pick # will not run into conflicts -HARFBUZZ_SHA256SUM := af4ea73e25ab748c8c063b78c2f88e48833db9b2ac369e29bd115702e789755e -HARFBUZZ_TARBALL := harfbuzz-8.4.0.tar.xz +HARFBUZZ_SHA256SUM := 77e4f7f98f3d86bf8788b53e6832fb96279956e1c3961988ea3d4b7ca41ddc27 +HARFBUZZ_TARBALL := harfbuzz-8.5.0.tar.xz # three static lines # so that git cherry-pick # will not run into conflicts
core.git: Branch 'libreoffice-24-2' - download.lst
download.lst |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) New commits: commit 2041013fd9759fdd7fc242ee4ae870175bab4801 Author: Xisco Fauli AuthorDate: Wed May 8 12:15:59 2024 +0200 Commit: Adolfo Jayme Barrientos CommitDate: Tue May 14 08:06:50 2024 +0200 Update language-subtag-registry to 2024-03-07 How the file was created: mkdir data cd data wget https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry cd .. tar -cvjSf language-subtag-registry-2024-03-07.tar.bz2 data Change-Id: If1bdeab0ee5853855949dcbbfb00170e897c80e1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167341 Tested-by: Jenkins Reviewed-by: Eike Rathke (cherry picked from commit 96698d3a72d8496358786ffedc7b6eb22af3648c) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167461 Reviewed-by: Adolfo Jayme Barrientos diff --git a/download.lst b/download.lst index 690e4c73b6be..03075fb36e83 100644 --- a/download.lst +++ b/download.lst @@ -359,8 +359,8 @@ LIBJPEG_TURBO_TARBALL := libjpeg-turbo-2.1.5.1.tar.gz # three static lines # so that git cherry-pick # will not run into conflicts -LANGTAGREG_SHA256SUM := 59fdc026b5088e7947e1e6add482d2a40e1f7e25c50f198b456954216462c2eb -LANGTAGREG_TARBALL := language-subtag-registry-2023-08-02.tar.bz2 +LANGTAGREG_SHA256SUM := 642c1c8e08aa79884f3d0fe15c0f5866e6fb6828af22c3c9c1fe3827f99e58cc +LANGTAGREG_TARBALL := language-subtag-registry-2024-03-07.tar.bz2 # three static lines # so that git cherry-pick # will not run into conflicts
core.git: download.lst external/poppler
download.lst |4 +- external/poppler/UnpackedTarball_poppler.mk |1 external/poppler/char_traits.patch | 11 - external/poppler/disable-freetype.patch.1|4 +- external/poppler/disable-nss-and-gpgmepp.patch.1 | 45 +-- 5 files changed, 39 insertions(+), 26 deletions(-) New commits: commit 5265c69ed6aa2a5f88cf939c64683552e587e575 Author: Xisco Fauli AuthorDate: Mon May 13 11:14:06 2024 +0200 Commit: Xisco Fauli CommitDate: Mon May 13 22:41:45 2024 +0200 poppler: Upgrade 24.05.0 * external/poppler/char_traits.patch is no longer neeeded after https://cgit.freedesktop.org/poppler/poppler/commit/cpp/poppler-global.h?id=b4ac7d9af7cb5edfcfcbda035ed8b8c218ba8564 * Adapt external/poppler/disable-nss-and-gpgmepp.patch.1 after https://cgit.freedesktop.org/poppler/poppler/commit/?id=d40bb7e308c9e3299e50d3e2880229cd6272587e Downloaded from https://poppler.freedesktop.org/poppler-24.05.0.tar.xz Change-Id: I87ed833f92e504f0a39b5f64c1db42d579050a37 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167582 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/download.lst b/download.lst index cf648eb74e60..30346ac91206 100644 --- a/download.lst +++ b/download.lst @@ -543,8 +543,8 @@ LIBTIFF_TARBALL := tiff-4.6.0.tar.xz # three static lines # so that git cherry-pick # will not run into conflicts -POPPLER_SHA256SUM := bafbf0db5713dec25b5d16eb2cd87e4a62351cdc40f050c3937cd8dd6882d446 -POPPLER_TARBALL := poppler-24.03.0.tar.xz +POPPLER_SHA256SUM := d8c5eb30b50285ad9f0af8c6335cc2d3b9597fca475cbc2598a5479fa379f779 +POPPLER_TARBALL := poppler-24.05.0.tar.xz POPPLER_DATA_SHA256SUM := c835b640a40ce357e1b83666aabd95edffa24d49b8daff63adb851cdab74 POPPLER_DATA_TARBALL := poppler-data-0.4.12.tar.gz # three static lines diff --git a/external/poppler/UnpackedTarball_poppler.mk b/external/poppler/UnpackedTarball_poppler.mk index c6ddbf9785d3..784fc768e2a7 100644 --- a/external/poppler/UnpackedTarball_poppler.mk +++ b/external/poppler/UnpackedTarball_poppler.mk @@ -14,7 +14,6 @@ $(eval $(call gb_UnpackedTarball_set_tarball,poppler,$(POPPLER_TARBALL),,poppler $(eval $(call gb_UnpackedTarball_set_patchlevel,poppler,0)) $(eval $(call gb_UnpackedTarball_add_patches,poppler,\ - external/poppler/char_traits.patch \ external/poppler/disable-freetype.patch.1 \ external/poppler/disable-nss-and-gpgmepp.patch.1 \ external/poppler/poppler-config.patch.1 \ diff --git a/external/poppler/char_traits.patch b/external/poppler/char_traits.patch deleted file mode 100644 index 3483f2fe22d8.. --- a/external/poppler/char_traits.patch +++ /dev/null @@ -1,11 +0,0 @@ cpp/poppler-global.h -+++ cpp/poppler-global.h -@@ -98,7 +98,7 @@ - #pragma warning(push) - #pragma warning(disable : 4251) /* class 'A' needs to have dll interface for to be used by clients of class 'B'. */ - #endif --class POPPLER_CPP_EXPORT ustring : public std::basic_string -+class POPPLER_CPP_EXPORT ustring : public std::u16string - { - public: - ustring(); diff --git a/external/poppler/disable-freetype.patch.1 b/external/poppler/disable-freetype.patch.1 index d12374f088f9..2d4ce2f69c9c 100644 --- a/external/poppler/disable-freetype.patch.1 +++ b/external/poppler/disable-freetype.patch.1 @@ -22,13 +22,13 @@ disable freetype dependent code #include // helper for using std::visit to get a dependent false for static_asserts -@@ -2760,6 +2760,8 @@ +@@ -2840,6 +2840,8 @@ Form::AddFontResult Form::addFontToDefaultResources(const std::string , int faceIndex, const std::string , const std::string , bool forceName) { +return {}; +#if 0 - if (!GooString::endsWith(filepath, ".ttf") && !GooString::endsWith(filepath, ".ttc") && !GooString::endsWith(filepath, ".otf")) { + if (!filepath.ends_with(".ttf") && !filepath.ends_with(".ttc") && !filepath.ends_with(".otf")) { error(errIO, -1, "We only support embedding ttf/ttc/otf fonts for now. The font file for {0:s} {1:s} was {2:s}", fontFamily.c_str(), fontStyle.c_str(), filepath.c_str()); return {}; @@ -2994,6 +2996,7 @@ diff --git a/external/poppler/disable-nss-and-gpgmepp.patch.1 b/external/poppler/disable-nss-and-gpgmepp.patch.1 index 1d7f7f933433..1fc9ede6035c 100644 --- a/external/poppler/disable-nss-and-gpgmepp.patch.1 +++ b/external/poppler/disable-nss-and-gpgmepp.patch.1 @@ -11,9 +11,9 @@ disable NSS/GPGMEPP dependent code. #include "SignatureInfo.h" #include "CertificateInfo.h" #include "XRef.h" -@@ -578,7 +578,7 @@ +@@ -584,7 +584,7 @@ { - return static_cast(field)->validateSignature(doVerifyCert, forceRevalidation, validationTime, ocspRevocationCheck, enableAIA); + return static_c
core.git: Branch 'libreoffice-24-2' - download.lst
download.lst |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) New commits: commit a4c2c23cbb77a2d821e71e6a51f8e6d1779f1e3e Author: Xisco Fauli AuthorDate: Mon May 13 12:45:05 2024 +0200 Commit: Caolán McNamara CommitDate: Mon May 13 20:26:35 2024 +0200 libxml2: upgrade to 2.12.7 * Fixes CVE-2024-34459 Downloaded from https://download.gnome.org/sources/libxml2/2.12/libxml2-2.12.7.tar.xz Change-Id: Ie45ad54b3f781a54a278e2542fccafb8d06542bb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167585 Tested-by: Jenkins Reviewed-by: Xisco Fauli (cherry picked from commit 02dc762466c655e9ca6fb7cef92b1495915b34ed) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167460 Reviewed-by: Caolán McNamara diff --git a/download.lst b/download.lst index 40384de2b66d..690e4c73b6be 100644 --- a/download.lst +++ b/download.lst @@ -424,8 +424,8 @@ XMLSEC_TARBALL := xmlsec1-1.3.2.tar.gz # three static lines # so that git cherry-pick # will not run into conflicts -LIBXML_SHA256SUM := 889c593a881a3db5fdd96cc9318c87df34eb648edfc458272ad46fd607353fbb -LIBXML_VERSION_MICRO := 6 +LIBXML_SHA256SUM := 24ae78ff1363a973e6d8beba941a7945da2ac056e19b53956aeb6927fd6cfb56 +LIBXML_VERSION_MICRO := 7 LIBXML_TARBALL := libxml2-2.12.$(LIBXML_VERSION_MICRO).tar.xz # three static lines # so that git cherry-pick
core.git: download.lst
download.lst |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) New commits: commit 4133e187c99b19bd5986d0c8af923e9f1400f82b Author: Xisco Fauli AuthorDate: Mon May 13 17:49:48 2024 +0200 Commit: Xisco Fauli CommitDate: Mon May 13 18:12:26 2024 +0200 lxml: fix --enable-python=fully-internal Originally I downloaded the tar file from https://github.com/lxml/lxml/releases/download/lxml-5.2.2/lxml-5.2.2.tar.gz and pushed it to extern https://gerrit.libreoffice.org/c/extern/+/167571 Later I realized the lxml website was pointing to another file https://lxml.de/files/lxml-5.2.2.tgz which I also changed in extern https://gerrit.libreoffice.org/c/extern/+/167588 But make fails with tar: This does not look like a tar archive tar: Skipping to next header tar: Exiting with failure status due to previous errors so change download.lst back to point to the first tar file The commit is extern was also reverted with https://gerrit.libreoffice.org/c/extern/+/167606 Change-Id: I8f335d4a0b9d9b41c9c596f188f63bb0691ae11b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167607 Tested-by: Xisco Fauli Reviewed-by: Xisco Fauli diff --git a/download.lst b/download.lst index da9a25814123..cf648eb74e60 100644 --- a/download.lst +++ b/download.lst @@ -441,8 +441,8 @@ LPSOLVE_TARBALL := 26b3e95ddf3d9c077c480ea45874b3b8-lp_solve_5.5.tar.gz # three static lines # so that git cherry-pick # will not run into conflicts -LXML_SHA256SUM := 0e963eecfb0efa22ca826fd558d5701eb53a574811d2499f4d1a8c582007c83f -LXML_TARBALL := lxml-5.2.2.tgz +LXML_SHA256SUM := bb2dc4898180bea79863d5487e5f9c7c34297414bad54bcd0f0852aee9cfdb87 +LXML_TARBALL := lxml-5.2.2.tar.gz # three static lines # so that git cherry-pick # will not run into conflicts
core.git: download.lst
download.lst |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) New commits: commit 96f74d85983fd693d349d593c4389a8f990fdaaa Author: Xisco Fauli AuthorDate: Mon May 13 09:44:02 2024 +0200 Commit: Xisco Fauli CommitDate: Mon May 13 17:01:33 2024 +0200 lxml: Upgrade to 5.2.2 Downloaded from https://lxml.de/files/lxml-5.2.2.tgz Change-Id: I0beaabac69029cb768eff10cf55c6691eb2d322d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167572 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/download.lst b/download.lst index 0c4553a37dd7..da9a25814123 100644 --- a/download.lst +++ b/download.lst @@ -441,8 +441,8 @@ LPSOLVE_TARBALL := 26b3e95ddf3d9c077c480ea45874b3b8-lp_solve_5.5.tar.gz # three static lines # so that git cherry-pick # will not run into conflicts -LXML_SHA256SUM := 3f7765e69bbce0906a7c74d5fe46d2c7a7596147318dbc08e4a2431f3060e306 -LXML_TARBALL := lxml-5.2.1.tar.gz +LXML_SHA256SUM := 0e963eecfb0efa22ca826fd558d5701eb53a574811d2499f4d1a8c582007c83f +LXML_TARBALL := lxml-5.2.2.tgz # three static lines # so that git cherry-pick # will not run into conflicts
core.git: download.lst
download.lst |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) New commits: commit b6f9caeb081da2004f067ad9216875c86eead8b1 Author: Xisco Fauli AuthorDate: Mon May 13 13:27:33 2024 +0200 Commit: Xisco Fauli CommitDate: Mon May 13 16:42:41 2024 +0200 postgresql: Upgrade to 13.15 Downloaded from https://ftp.postgresql.org/pub/source/v13.15/postgresql-13.15.tar.bz2 Change-Id: I17d103c7b489645215b4a54d81f494506e9e90a8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167590 Reviewed-by: Xisco Fauli Tested-by: Jenkins diff --git a/download.lst b/download.lst index b0a13eb37690..59d7ae0ee360 100644 --- a/download.lst +++ b/download.lst @@ -550,8 +550,8 @@ POPPLER_DATA_TARBALL := poppler-data-0.4.12.tar.gz # three static lines # so that git cherry-pick # will not run into conflicts -POSTGRESQL_SHA256SUM := b8df078551898960bd500dc5d38a177e9905376df81fe7f2b660a1407fa6a5ed -POSTGRESQL_TARBALL := postgresql-13.14.tar.bz2 +POSTGRESQL_SHA256SUM := 42edd415446d33b8c242be76d1ad057531b2264b2e86939339b7075c6e4ec925 +POSTGRESQL_TARBALL := postgresql-13.15.tar.bz2 # three static lines # so that git cherry-pick # will not run into conflicts
core.git: download.lst
download.lst |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) New commits: commit 96698d3a72d8496358786ffedc7b6eb22af3648c Author: Xisco Fauli AuthorDate: Wed May 8 12:15:59 2024 +0200 Commit: Eike Rathke CommitDate: Mon May 13 16:40:18 2024 +0200 Update language-subtag-registry to 2024-03-07 How the file was created: mkdir data cd data wget https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry cd .. tar -cvjSf language-subtag-registry-2024-03-07.tar.bz2 data Change-Id: If1bdeab0ee5853855949dcbbfb00170e897c80e1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167341 Tested-by: Jenkins Reviewed-by: Eike Rathke diff --git a/download.lst b/download.lst index 5acd40480231..b0a13eb37690 100644 --- a/download.lst +++ b/download.lst @@ -359,8 +359,8 @@ LIBJPEG_TURBO_TARBALL := libjpeg-turbo-2.1.5.1.tar.gz # three static lines # so that git cherry-pick # will not run into conflicts -LANGTAGREG_SHA256SUM := 59fdc026b5088e7947e1e6add482d2a40e1f7e25c50f198b456954216462c2eb -LANGTAGREG_TARBALL := language-subtag-registry-2023-08-02.tar.bz2 +LANGTAGREG_SHA256SUM := 642c1c8e08aa79884f3d0fe15c0f5866e6fb6828af22c3c9c1fe3827f99e58cc +LANGTAGREG_TARBALL := language-subtag-registry-2024-03-07.tar.bz2 # three static lines # so that git cherry-pick # will not run into conflicts
core.git: download.lst
download.lst |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) New commits: commit 02dc762466c655e9ca6fb7cef92b1495915b34ed Author: Xisco Fauli AuthorDate: Mon May 13 12:45:05 2024 +0200 Commit: Xisco Fauli CommitDate: Mon May 13 15:46:05 2024 +0200 libxml2: upgrade to 2.12.7 * Fixes CVE-2024-34459 Downloaded from https://download.gnome.org/sources/libxml2/2.12/libxml2-2.12.7.tar.xz Change-Id: Ie45ad54b3f781a54a278e2542fccafb8d06542bb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167585 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/download.lst b/download.lst index aa98bee9730b..5acd40480231 100644 --- a/download.lst +++ b/download.lst @@ -424,8 +424,8 @@ XMLSEC_TARBALL := xmlsec1-1.3.4.tar.gz # three static lines # so that git cherry-pick # will not run into conflicts -LIBXML_SHA256SUM := 889c593a881a3db5fdd96cc9318c87df34eb648edfc458272ad46fd607353fbb -LIBXML_VERSION_MICRO := 6 +LIBXML_SHA256SUM := 24ae78ff1363a973e6d8beba941a7945da2ac056e19b53956aeb6927fd6cfb56 +LIBXML_VERSION_MICRO := 7 LIBXML_TARBALL := libxml2-2.12.$(LIBXML_VERSION_MICRO).tar.xz # three static lines # so that git cherry-pick
core.git: download.lst external/libmwaw
download.lst |4 ++-- external/libmwaw/Library_mwaw.mk |3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) New commits: commit 16357c68bdb2fb9c1b7eb77fdbcb50c41948c6db Author: Xisco Fauli AuthorDate: Fri May 10 14:28:41 2024 +0200 Commit: Xisco Fauli CommitDate: Fri May 10 21:52:28 2024 +0200 libmwaw: Upgrade to 0.3.22 Change-Id: I95169f11e7b188ab9b4667b2d4736bd0d5a4a083 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167477 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/download.lst b/download.lst index c8146984bbf3..aa98bee9730b 100644 --- a/download.lst +++ b/download.lst @@ -466,8 +466,8 @@ MSPUB_TARBALL := libmspub-0.1.4.tar.xz # three static lines # so that git cherry-pick # will not run into conflicts -MWAW_SHA256SUM := e8750123a78d61b943cef78b7736c8a7f20bb0a649aa112402124fba794fc21c -MWAW_VERSION_MICRO := 21 +MWAW_SHA256SUM := a1a39ffcea3ff2a7a7aae0c23877ddf4918b554bf82b0de5d7ce8e7f61ea8e32 +MWAW_VERSION_MICRO := 22 MWAW_TARBALL := libmwaw-0.3.$(MWAW_VERSION_MICRO).tar.xz # three static lines # so that git cherry-pick diff --git a/external/libmwaw/Library_mwaw.mk b/external/libmwaw/Library_mwaw.mk index 30e71443f5a0..2b7c2286fa51 100644 --- a/external/libmwaw/Library_mwaw.mk +++ b/external/libmwaw/Library_mwaw.mk @@ -201,9 +201,12 @@ $(eval $(call gb_Library_add_generated_exception_objects,mwaw,\ UnpackedTarball/libmwaw/src/lib/RagTimeSpreadsheet \ UnpackedTarball/libmwaw/src/lib/RagTimeStruct \ UnpackedTarball/libmwaw/src/lib/RagTimeText \ + UnpackedTarball/libmwaw/src/lib/ReadySetGoGraph \ UnpackedTarball/libmwaw/src/lib/ReadySetGoParser \ + UnpackedTarball/libmwaw/src/lib/ReadySetGoStyleManager \ UnpackedTarball/libmwaw/src/lib/ScoopParser \ UnpackedTarball/libmwaw/src/lib/ScriptWriterParser \ + UnpackedTarball/libmwaw/src/lib/SpringBoardParser \ UnpackedTarball/libmwaw/src/lib/StudentWritingCParser \ UnpackedTarball/libmwaw/src/lib/StyleParser \ UnpackedTarball/libmwaw/src/lib/SuperPaintParser \
core.git: download.lst external/librevenge
download.lst|4 ++-- external/librevenge/C2039-unique-shared_ptr.patch.0 | 11 +++ external/librevenge/UnpackedTarball_librevenge.mk |1 + external/librevenge/tdf63130-improve-perf.patch.0 | 16 4 files changed, 22 insertions(+), 10 deletions(-) New commits: commit 49a0203e7aa3a98bbed4412ab4364614505f88eb Author: Xisco Fauli AuthorDate: Thu May 9 18:02:59 2024 +0200 Commit: Xisco Fauli CommitDate: Fri May 10 15:27:16 2024 +0200 librevenge: upgrade to 0.0.5 * Add C2039-unique-shared_ptr.patch.0 to fix C:/cygwin/home/tdf/lode/jenkins/workspace/gerrit_windows/workdir/UnpackedTarball/librevenge/src/lib/RVNGBinaryData.cpp(96): error C2039: 'unique': is not a member of 'std::shared_ptr' C:/cygwin/home/tdf/lode/jenkins/workspace/gerrit_windows/workdir/UnpackedTarball/librevenge/src/lib/RVNGBinaryData.cpp(86): note: see declaration of 'std::shared_ptr' make[1]: *** [C:/cygwin/home/tdf/lode/jenkins/workspace/gerrit_windows/solenv/gbuild/LinkTarget.mk:398: C:/cygwin/home/tdf/lode/jenkins/workspace/gerrit_windows/workdir/GenCxxObject/UnpackedTarball/librevenge/src/lib/RVNGBinaryData.o] Error 2 on Windows Change-Id: I31023633426fc902e2298c696826d8371bb4d63b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167388 Reviewed-by: Xisco Fauli Tested-by: Jenkins diff --git a/download.lst b/download.lst index a7874c271ab2..c8146984bbf3 100644 --- a/download.lst +++ b/download.lst @@ -580,8 +580,8 @@ REDLAND_TARBALL := e5be03eda13ef68aabab6e42aa67715e-redland-1.0.17.tar.gz # three static lines # so that git cherry-pick # will not run into conflicts -REVENGE_SHA256SUM := c51601cd08320b75702812c64aae0653409164da7825fd0f451ac2c5dbe77cbf -REVENGE_VERSION_MICRO := 4 +REVENGE_SHA256SUM := 5892ca6796f7a2a93d580832e907e849b19d980b40d326a283b18877ab6de0c5 +REVENGE_VERSION_MICRO := 5 REVENGE_TARBALL := librevenge-0.0.$(REVENGE_VERSION_MICRO).tar.bz2 # three static lines # so that git cherry-pick diff --git a/external/librevenge/C2039-unique-shared_ptr.patch.0 b/external/librevenge/C2039-unique-shared_ptr.patch.0 new file mode 100644 index ..0dcec5058e89 --- /dev/null +++ b/external/librevenge/C2039-unique-shared_ptr.patch.0 @@ -0,0 +1,11 @@ +--- src/lib/RVNGBinaryData.cpp 2024-05-10 13:20:09.278288686 +0200 src/lib/RVNGBinaryData.cpp 2024-05-10 13:23:14.365139906 +0200 +@@ -93,7 +93,7 @@ + + void RVNGBinaryDataImpl::makeUnique() + { +- if (!m_ptr.unique()) ++ if (!(m_ptr.use_count() == 1)) + { + std::shared_ptr ptr(new DataImpl()); + ptr->m_buf = m_ptr->m_buf; diff --git a/external/librevenge/UnpackedTarball_librevenge.mk b/external/librevenge/UnpackedTarball_librevenge.mk index 5fcc2e33b060..316e961bd1ba 100644 --- a/external/librevenge/UnpackedTarball_librevenge.mk +++ b/external/librevenge/UnpackedTarball_librevenge.mk @@ -18,6 +18,7 @@ $(eval $(call gb_UnpackedTarball_set_patchlevel,librevenge,0)) $(eval $(call gb_UnpackedTarball_add_patches,librevenge, \ external/librevenge/rpath.patch \ external/librevenge/tdf63130-improve-perf.patch.0 \ +external/librevenge/C2039-unique-shared_ptr.patch.0 \ )) ifneq ($(OS),MACOSX) diff --git a/external/librevenge/tdf63130-improve-perf.patch.0 b/external/librevenge/tdf63130-improve-perf.patch.0 index 02a8a6e1f94b..f8b972217c76 100644 --- a/external/librevenge/tdf63130-improve-perf.patch.0 +++ b/external/librevenge/tdf63130-improve-perf.patch.0 @@ -18,7 +18,7 @@ /** Create a new string from s as escaped XML. --- src/lib/RVNGBinaryData.cpp 2023-05-17 15:48:15.373159469 +0200 +++ src/lib/RVNGBinaryData.cpp 2023-05-17 15:49:00.773411873 +0200 -@@ -67,9 +67,9 @@ +@@ -68,9 +68,9 @@ boost::archive::iterators::transform_width::const_iterator, 6, 8 > > base64_encoder; // Encode the buffer and create a string @@ -30,14 +30,14 @@ result.append(numPadding, '='); // add '=' for each padded character } -@@ -150,10 +150,10 @@ +@@ -153,10 +153,10 @@ { m_binaryDataImpl->makeUnique(); - unsigned long previousSize = m_binaryDataImpl->m_ptr->m_buf.size(); - m_binaryDataImpl->m_ptr->m_buf.reserve(previousSize + data.m_binaryDataImpl->m_ptr->m_buf.size()); -- for (unsigned long i = 0; i < data.m_binaryDataImpl->m_ptr->m_buf.size(); i++) -- m_binaryDataImpl->m_ptr->m_buf.push_back(data.m_binaryDataImpl->m_ptr->m_buf[i]); +- const auto = data.m_binaryDataImpl->m_ptr->m_buf; +- std::copy(src.begin(), src.end(), std::back_inserter(m_binaryDataImpl->m_ptr->m_buf)); + m_binaryDataImpl->m_ptr->m_buf.insert( + m_binaryDataImpl->m_ptr->m_buf.end(), + data.m_binaryDataImpl->m_ptr->m_buf.begin(), @@ -45,7 +45,7 @@ } void RVNGBinaryData::a
core.git: Branch 'feature/cib_contract49c' - sw/qa
sw/qa/extras/ooxmlexport/data/tdf156484.docx |binary sw/qa/extras/ooxmlexport/ooxmlexport13.cxx | 14 ++ 2 files changed, 14 insertions(+) New commits: commit decde4da4f4ab3a9bdc565ebc1e11c145ec4295a Author: Xisco Fauli AuthorDate: Fri May 10 12:33:40 2024 +0200 Commit: Thorsten Behrens CommitDate: Fri May 10 14:58:58 2024 +0200 tdf#156484: sw_ooxmlexport13: Add unittest Change-Id: I3bcda136eff62a61783b4e52132125c4b1794ccb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167446 Reviewed-by: Xisco Fauli Tested-by: Jenkins diff --git a/sw/qa/extras/ooxmlexport/data/tdf156484.docx b/sw/qa/extras/ooxmlexport/data/tdf156484.docx new file mode 100644 index ..73a61738f681 Binary files /dev/null and b/sw/qa/extras/ooxmlexport/data/tdf156484.docx differ diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx index c7c670fe30ad..1f41e35f6877 100644 --- a/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx +++ b/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx @@ -709,6 +709,20 @@ DECLARE_OOXMLEXPORT_TEST(testTdf119201, "tdf119201.docx") CPPUNIT_ASSERT_MESSAGE("Third shape should be printable.", getProperty(xShape, "Printable")); } +DECLARE_OOXMLEXPORT_TEST(testTdf156484, "tdf156484.docx") +{ +auto xShape(getShape(1)); +// Without the fix in place, this test would have failed here +CPPUNIT_ASSERT_MESSAGE("First shape should not be visible.", !getProperty(xShape, "Visible")); +CPPUNIT_ASSERT_MESSAGE("First shape should not be printable.", !getProperty(xShape, "Printable")); +xShape = getShape(2); +CPPUNIT_ASSERT_MESSAGE("Second shape should not be visible.", !getProperty(xShape, "Visible")); +CPPUNIT_ASSERT_MESSAGE("Second shape should not be printable.", !getProperty(xShape, "Printable")); +xShape = getShape(3); +CPPUNIT_ASSERT_MESSAGE("Third shape should not be visible.", !getProperty(xShape, "Visible")); +CPPUNIT_ASSERT_MESSAGE("Third shape should not be printable.", !getProperty(xShape, "Printable")); +} + DECLARE_OOXMLEXPORT_TEST(testTdf124594, "tdf124594.docx") { xmlDocUniquePtr pDump = parseLayoutDump();
core.git: sw/qa
sw/qa/extras/ooxmlexport/data/tdf156484.docx |binary sw/qa/extras/ooxmlexport/ooxmlexport13.cxx | 14 ++ 2 files changed, 14 insertions(+) New commits: commit b27a39e26bdb1178c6d6a3f6880b9d40a1f9b1ab Author: Xisco Fauli AuthorDate: Fri May 10 12:33:40 2024 +0200 Commit: Xisco Fauli CommitDate: Fri May 10 14:08:41 2024 +0200 tdf#156484: sw_ooxmlexport13: Add unittest Change-Id: I3bcda136eff62a61783b4e52132125c4b1794ccb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167446 Reviewed-by: Xisco Fauli Tested-by: Jenkins diff --git a/sw/qa/extras/ooxmlexport/data/tdf156484.docx b/sw/qa/extras/ooxmlexport/data/tdf156484.docx new file mode 100644 index ..73a61738f681 Binary files /dev/null and b/sw/qa/extras/ooxmlexport/data/tdf156484.docx differ diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx index 9f0420354e9b..281981e9a51a 100644 --- a/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx +++ b/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx @@ -711,6 +711,20 @@ DECLARE_OOXMLEXPORT_TEST(testTdf119201, "tdf119201.docx") CPPUNIT_ASSERT_MESSAGE("Third shape should be printable.", getProperty(xShape, "Printable")); } +DECLARE_OOXMLEXPORT_TEST(testTdf156484, "tdf156484.docx") +{ +auto xShape(getShape(1)); +// Without the fix in place, this test would have failed here +CPPUNIT_ASSERT_MESSAGE("First shape should not be visible.", !getProperty(xShape, "Visible")); +CPPUNIT_ASSERT_MESSAGE("First shape should not be printable.", !getProperty(xShape, "Printable")); +xShape = getShape(2); +CPPUNIT_ASSERT_MESSAGE("Second shape should not be visible.", !getProperty(xShape, "Visible")); +CPPUNIT_ASSERT_MESSAGE("Second shape should not be printable.", !getProperty(xShape, "Printable")); +xShape = getShape(3); +CPPUNIT_ASSERT_MESSAGE("Third shape should not be visible.", !getProperty(xShape, "Visible")); +CPPUNIT_ASSERT_MESSAGE("Third shape should not be printable.", !getProperty(xShape, "Printable")); +} + DECLARE_OOXMLEXPORT_TEST(testTdf124594, "tdf124594.docx") { xmlDocUniquePtr pDump = parseLayoutDump();
core.git: sw/qa
sw/qa/extras/htmlimport/data/tdf154581.html |8 sw/qa/extras/htmlimport/htmlimport.cxx | 15 +++ 2 files changed, 23 insertions(+) New commits: commit 0479f870e05d5d231d2d57aaeedff11544bd370c Author: Xisco Fauli AuthorDate: Thu May 9 11:27:03 2024 +0200 Commit: Xisco Fauli CommitDate: Thu May 9 12:39:51 2024 +0200 tdf#154581 tdf#157411 tdf#158549: sw_htmlimport: Add unittest Change-Id: I0bf120b4761447a0acc9286e7181f7cf7c40c65b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167380 Reviewed-by: Xisco Fauli Tested-by: Jenkins diff --git a/sw/qa/extras/htmlimport/data/tdf154581.html b/sw/qa/extras/htmlimport/data/tdf154581.html new file mode 100644 index ..b82947bc0eed --- /dev/null +++ b/sw/qa/extras/htmlimport/data/tdf154581.html @@ -0,0 +1,8 @@ +http://www.w3.org/TR/1998/REC-html40-19980424/loose.dtd;> + + +Bold +underline +italic + + diff --git a/sw/qa/extras/htmlimport/htmlimport.cxx b/sw/qa/extras/htmlimport/htmlimport.cxx index e0859b872f91..e7880c3427e9 100644 --- a/sw/qa/extras/htmlimport/htmlimport.cxx +++ b/sw/qa/extras/htmlimport/htmlimport.cxx @@ -9,6 +9,9 @@ #include +#include +#include +#include #include #include #include @@ -594,6 +597,18 @@ CPPUNIT_TEST_FIXTURE(HtmlImportTest, testRGBAColor) CPPUNIT_ASSERT_EQUAL(nBackColor, getProperty(xRun, "CharBackColor")); } +CPPUNIT_TEST_FIXTURE(HtmlImportTest, testTdf154581) +{ +createSwWebDoc("tdf154581.html"); + +// Without the fix in place, this test would have failed with +// - Expected: 150 +// - Actual : 100 +CPPUNIT_ASSERT_EQUAL(awt::FontWeight::BOLD, getProperty(getRun(getParagraph(1), 1), "CharWeight")); +CPPUNIT_ASSERT_EQUAL(sal_Int16(awt::FontUnderline::SINGLE), getProperty(getRun(getParagraph(2), 1), "CharUnderline")); +CPPUNIT_ASSERT_EQUAL(awt::FontSlant_ITALIC, getProperty(getRun(getParagraph(3), 1), "CharPosture")); +} + CPPUNIT_TEST_FIXTURE(HtmlImportTest, testTdf153341) { createSwWebDoc("tdf153341.html");
core.git: Branch 'libreoffice-7-6-7' - dictionaries
dictionaries |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 7b1944c9141fb26d519076f680b0837d89099a64 Author: Xisco Fauli AuthorDate: Tue May 7 18:28:12 2024 +0200 Commit: Gerrit Code Review CommitDate: Tue May 7 18:28:12 2024 +0200 Update git submodules * Update dictionaries from branch 'libreoffice-7-6-7' to c2812ca5c0d0b6eddf451b98186691c7ab75ddb2 - upgrade Ukrainian dictionaries to 6.4.4 Change-Id: Idf246940bdf58844212420975ab52c19b08327ec Reviewed-on: https://gerrit.libreoffice.org/c/dictionaries/+/166872 Tested-by: Xisco Fauli Reviewed-by: Xisco Fauli Reviewed-by: Andriy Rysin (cherry picked from commit 0ca7301c3c00d6e7936fd912ba775d0008f7fee4) Reviewed-on: https://gerrit.libreoffice.org/c/dictionaries/+/166907 Tested-by: Christian Lohmaier Reviewed-by: Christian Lohmaier (cherry picked from commit 0c5d6db9f4d3e465547e3a177360662e0f475d62) Reviewed-on: https://gerrit.libreoffice.org/c/dictionaries/+/166909 Reviewed-by: Adolfo Jayme Barrientos diff --git a/dictionaries b/dictionaries index f747c9370dcb..c2812ca5c0d0 16 --- a/dictionaries +++ b/dictionaries @@ -1 +1 @@ -Subproject commit f747c9370dcb6991d216368f598504208ac151b0 +Subproject commit c2812ca5c0d0b6eddf451b98186691c7ab75ddb2
dictionaries.git: Branch 'libreoffice-7-6-7' - uk_UA/description.xml uk_UA/uk_UA.aff uk_UA/uk_UA.dic
uk_UA/description.xml |2 uk_UA/uk_UA.aff | 2459 uk_UA/uk_UA.dic |142223 +- 3 files changed, 74844 insertions(+), 69840 deletions(-) New commits: commit c2812ca5c0d0b6eddf451b98186691c7ab75ddb2 Author: Xisco Fauli AuthorDate: Mon Apr 29 18:14:57 2024 +0200 Commit: Christian Lohmaier CommitDate: Tue May 7 18:28:12 2024 +0200 upgrade Ukrainian dictionaries to 6.4.4 Change-Id: Idf246940bdf58844212420975ab52c19b08327ec Reviewed-on: https://gerrit.libreoffice.org/c/dictionaries/+/166872 Tested-by: Xisco Fauli Reviewed-by: Xisco Fauli Reviewed-by: Andriy Rysin (cherry picked from commit 0ca7301c3c00d6e7936fd912ba775d0008f7fee4) Reviewed-on: https://gerrit.libreoffice.org/c/dictionaries/+/166907 Tested-by: Christian Lohmaier Reviewed-by: Christian Lohmaier (cherry picked from commit 0c5d6db9f4d3e465547e3a177360662e0f475d62) Reviewed-on: https://gerrit.libreoffice.org/c/dictionaries/+/166909 Reviewed-by: Adolfo Jayme Barrientos diff --git a/uk_UA/description.xml b/uk_UA/description.xml index 4941499..f221da9 100644 --- a/uk_UA/description.xml +++ b/uk_UA/description.xml @@ -1,6 +1,6 @@ http://openoffice.org/extensions/description/2006; xmlns:d="http://openoffice.org/extensions/description/2006; xmlns:xlink="http://www.w3.org/1999/xlink;> - + Ukrainian spelling dictionary, hyphenation rules, and thesaurus diff --git a/uk_UA/uk_UA.aff b/uk_UA/uk_UA.aff index 3faea89..2343c2a 100644 --- a/uk_UA/uk_UA.aff +++ b/uk_UA/uk_UA.aff @@ -287,12 +287,12 @@ SFX ( ін ьонах лін SFX ( ір ьорах лір SFX ( іт ьотах літ SFX ) Y 6 +SFX ) сти дучи [аея]сти SFX ) атися учись жатися SFX ) атися учися жатися ### -SFX ) стися дучись ястися -SFX ) стися дучися ястися ### SFX ) ати учи жати -SFX ) сти дучи ясти +SFX ) стися дучись [аея]стися +SFX ) стися дучися [аея]стися ### SFX * Y 3 SFX * ік оці ік SFX * іг озі іг @@ -326,126 +326,126 @@ SFX - ь ей ь SFX - ь ям ь SFX - ь ями ь SFX - ь ях ь -SFX . Y 5 -SFX . е а ще -SFX . е 0 ще -SFX . е ам ще -SFX . е ами ще -SFX . е ах ще -SFX 0 Y 113 -SFX 0 ій ою ій -SFX 0 ій оєві ій -SFX 0 ій оєм ій -SFX 0 ій ої ій -SFX 0 іб обі .іб -SFX 0 ів ові .ів -SFX 0 ід оді .ід -SFX 0 іж ожі .іж -SFX 0 із озі .із -SFX 0 ім омі .ім -SFX 0 ін оні .ін -SFX 0 іп опі .іп -SFX 0 ір орі .ір -SFX 0 іс осі .іс -SFX 0 іт оті .іт -SFX 0 іш оші .іш -SFX 0 ізд озді ізд -SFX 0 ізт озті ізт -SFX 0 ірд орді ірд -SFX 0 ірт орті ірт -SFX 0 ісд осді ісд -SFX 0 іст ості іст -SFX 0 ізд озду ізд -SFX 0 ізк озку ізк -SFX 0 ізт озту ізт -SFX 0 ірд орду ірд -SFX 0 ірк орку ірк -SFX 0 ірт орту ірт -SFX 0 ісд осду ісд -SFX 0 іск оску іск -SFX 0 іст осту іст -SFX 0 ізд оздові ізд -SFX 0 ізк озкові ізк -SFX 0 ізт озтові ізт -SFX 0 ірд ордові ірд -SFX 0 ірк оркові ірк -SFX 0 ірт ортові ірт -SFX 0 ісд осдові ісд -SFX 0 іск оскові іск -SFX 0 іст остові іст -SFX 0 ізд оздом ізд -SFX 0 ізк озком ізк -SFX 0 ізт озтом ізт -SFX 0 ірд ордом ірд -SFX 0 ірк орком ірк -SFX 0 ірт ортом ірт -SFX 0 ісд осдом ісд -SFX 0 іск оском іск -SFX 0 іст остом іст -SFX 0 іб обові іб -SFX 0 ід одові ід -SFX 0 іг огові іг -SFX 0 із озові із -SFX 0 ік окові ік -SFX 0 іл олові іл -SFX 0 ім омові ім -SFX 0 ін онові ін -SFX 0 іп опові іп -SFX 0 ір орові ір -SFX 0 іс осові іс -SFX 0 іт отові іт -SFX 0 ік оці потік -SFX 0 іж ожу іж -SFX 0 іш ошу іш -SFX 0 іж ожем іж -SFX 0 іш ошем іш -SFX 0 іж ожеві іж -SFX 0 іш ошеві іш -SFX 0 інь оню інь -SFX 0 інь оневі інь -SFX 0 інь онем інь -SFX 0 інь оні інь -SFX 0 іль олю іль -SFX 0 іль олеві іль -SFX 0 іль олем іль -SFX 0 іль олі іль -SFX 0 іб обу іб -SFX 0 ів ову ів -SFX 0 ід оду ід -SFX 0 іг огу іг -SFX 0 із озу із -SFX 0 ік оку ік -SFX 0 іл олу іл -SFX 0 ім ому ім -SFX 0 ін ону ін -SFX 0 іп опу іп -SFX 0 ір ору ір -SFX 0 іс осу іс -SFX 0 іт оту іт -SFX 0 іч очу іч -SFX 0 іб обом іб -SFX 0 ів овом ів -SFX 0 ід одом ід -SFX 0 іг огом іг -SFX 0 із озом із -SFX 0 ік оком ік -SFX 0 іл олом іл -SFX 0 ім омом ім -SFX 0 ін оном ін -SFX 0 іп опом іп -SFX 0 ір ором ір -SFX 0 іс осом іс -SFX 0 іт отом іт -SFX 0 іч очом іч -SFX 0 ік оці стік -SFX 0 івш овшу івш -SFX 0 івш овшеві івш -SFX 0 івш овшем івш -SFX 0 івш овші івш -SFX 0 ість остю ість -SFX 0 ість остеві ість -SFX 0 ість остем ість -SFX 0 ість ості ість +SFX . Y 113 +SFX . ій ою ій +SFX . ій оєві ій +SFX . ій оєм ій +SFX . ій ої ій +SFX . іб обі .іб +SFX . ів ові .ів +SFX . ід оді .ід +SFX . іж ожі .іж +SFX . із озі .із +SFX . ім омі .ім +SFX . ін оні .ін +SFX . іп опі .іп +SFX . ір орі .ір +SFX . іс осі .іс +SFX . іт оті .іт +SFX . іш оші .іш +SFX . ізд озді ізд +SFX . ізт озті ізт +SFX . ірд орді ірд +SFX . ірт орті ірт +SFX . ісд осді ісд +SFX . іст ості іст +SFX . ізд озду ізд +SFX . ізк озку ізк +SFX . ізт озту ізт +SFX . ірд орду ірд +SFX . ірк орку ірк +SFX . ірт орту ірт +SFX . ісд осду ісд +SFX . іск оску іск +SFX . іст осту іст +SFX . ізд оздові ізд +SFX . ізк оз
core.git: download.lst
download.lst |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) New commits: commit 0c7c6ba98fba651c8ae4015dbbf450c23611667a Author: Xisco Fauli AuthorDate: Tue May 7 16:16:33 2024 +0200 Commit: Xisco Fauli CommitDate: Tue May 7 18:11:11 2024 +0200 libatomic_ops: Upgrade to 7.8.2 Change-Id: I7fcf8011cbb1fb5e5ba2f0a9737190bffa13114d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167287 Reviewed-by: Xisco Fauli Tested-by: Jenkins diff --git a/download.lst b/download.lst index e0f142b4d63d..a7874c271ab2 100644 --- a/download.lst +++ b/download.lst @@ -374,8 +374,8 @@ LIBASSUAN_TARBALL := libassuan-2.5.7.tar.bz2 # three static lines # so that git cherry-pick # will not run into conflicts -LIBATOMIC_OPS_SHA256SUM := 15676e7674e11bda5a7e50a73f4d9e7d60452271b8acf6fd39a71fefdf89fa31 -LIBATOMIC_OPS_TARBALL := libatomic_ops-7.8.0.tar.gz +LIBATOMIC_OPS_SHA256SUM := d305207fe207f2b3fb5cb4c019da12b44ce3fcbc593dfd5080d867b1a2419b51 +LIBATOMIC_OPS_TARBALL := libatomic_ops-7.8.2.tar.gz # three static lines # so that git cherry-pick # will not run into conflicts
core.git: download.lst external/lxml
download.lst |4 external/lxml/0001-Make-regexp-string-raw-to-correct-its-escape-sequenc.patch.1 | 31 --- external/lxml/UnpackedTarball_lxml.mk |3 external/lxml/Wincompatible-function-pointer-types.patch | 83 -- external/lxml/Wincompatible-pointer-types.patch | 65 --- 5 files changed, 2 insertions(+), 184 deletions(-) New commits: commit 606623d0fc5321754d9a054881ae9cac94cd9f04 Author: Xisco Fauli AuthorDate: Tue May 7 14:07:14 2024 +0200 Commit: Xisco Fauli CommitDate: Tue May 7 15:38:36 2024 +0200 lxml: upgrade to 5.2.1 * 0001-Make-regexp-string-raw-to-correct-its-escape-sequenc.patch.1 got obsoleted with https://github.com/lxml/lxml/commit/9686dd9c7670d18acff6360c8444520273d5f1b2 * Wincompatible-function-pointer-types.patch and Wincompatible-pointer-types.patch got obsoleted with https://github.com/lxml/lxml/commit/6bdf4c321b92e002123b4c162c75524dbeb4d54d Change-Id: I8f0dcba3bd64a1766a2292b687c8959c739ced6d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167278 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/download.lst b/download.lst index 27ffbbb97306..e0f142b4d63d 100644 --- a/download.lst +++ b/download.lst @@ -441,8 +441,8 @@ LPSOLVE_TARBALL := 26b3e95ddf3d9c077c480ea45874b3b8-lp_solve_5.5.tar.gz # three static lines # so that git cherry-pick # will not run into conflicts -LXML_SHA256SUM := 2455cfaeb7ac70338b3257f41e21f0724f4b5b0c0e7702da67ee6c3640835b67 -LXML_TARBALL := lxml-4.9.2.tgz +LXML_SHA256SUM := 3f7765e69bbce0906a7c74d5fe46d2c7a7596147318dbc08e4a2431f3060e306 +LXML_TARBALL := lxml-5.2.1.tar.gz # three static lines # so that git cherry-pick # will not run into conflicts diff --git a/external/lxml/0001-Make-regexp-string-raw-to-correct-its-escape-sequenc.patch.1 b/external/lxml/0001-Make-regexp-string-raw-to-correct-its-escape-sequenc.patch.1 deleted file mode 100644 index ce1ec383cc63.. --- a/external/lxml/0001-Make-regexp-string-raw-to-correct-its-escape-sequenc.patch.1 +++ /dev/null @@ -1,31 +0,0 @@ -From 9686dd9c7670d18acff6360c8444520273d5f1b2 Mon Sep 17 00:00:00 2001 -From: Jakub Wilk -Date: Fri, 16 Jun 2023 09:24:21 +0200 -Subject: [PATCH] Make regexp string raw to correct its escape sequence usage - (GH-371) - -Fixes: - -$ python3 -Wd setup.py -setup.py:117: DeprecationWarning: invalid escape sequence \. -... - setup.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/setup.py b/setup.py -index 709cbc68..7a3f46e5 100644 a/setup.py -+++ b/setup.py -@@ -114,7 +114,7 @@ extra_options['packages'] = [ - - def setup_extra_options(): - is_interesting_package = re.compile('^(libxml|libxslt|libexslt)$').match --is_interesting_header = re.compile('^(zconf|zlib|.*charset)\.h$').match -+is_interesting_header = re.compile(r'^(zconf|zlib|.*charset)\.h$').match - - def extract_files(directories, pattern='*'): - def get_files(root, dir_path, files): --- -2.39.2 - diff --git a/external/lxml/UnpackedTarball_lxml.mk b/external/lxml/UnpackedTarball_lxml.mk index 58905943c7ee..0216801cb1a8 100644 --- a/external/lxml/UnpackedTarball_lxml.mk +++ b/external/lxml/UnpackedTarball_lxml.mk @@ -14,10 +14,7 @@ $(eval $(call gb_UnpackedTarball_set_tarball,lxml,$(LXML_TARBALL))) $(eval $(call gb_UnpackedTarball_set_patchlevel,lxml,0)) $(eval $(call gb_UnpackedTarball_add_patches,lxml, \ - external/lxml/0001-Make-regexp-string-raw-to-correct-its-escape-sequenc.patch.1 \ external/lxml/replace-setuptools-with-distutils.patch.1 \ - external/lxml/Wincompatible-function-pointer-types.patch \ - external/lxml/Wincompatible-pointer-types.patch \ )) # vim: set noet sw=4 ts=4: diff --git a/external/lxml/Wincompatible-function-pointer-types.patch b/external/lxml/Wincompatible-function-pointer-types.patch deleted file mode 100644 index 644082fdc8bc.. --- a/external/lxml/Wincompatible-function-pointer-types.patch +++ /dev/null @@ -1,83 +0,0 @@ src/lxml/etree.c -+++ src/lxml/etree.c -@@ -113118,7 +113118,7 @@ - * self._orig_loader = _register_document_loader() if set_document_loader else NULL - * if self._validator is not None: - */ -- __pyx_v_self->_c_ctxt->sax->serror = __pyx_f_4lxml_5etree__receiveParserError; -+ __pyx_v_self->_c_ctxt->sax->serror = (xmlStructuredErrorFunc)__pyx_f_4lxml_5etree__receiveParserError; - - /* "src/lxml/parser.pxi":587 - * self._doc = None -@@ -117606,7 +117606,7 @@ - * sax.startElementNs = NULL - * sax.endElementNs = NULL - */ --__pyx_v_sax->serror = __pyx_f_4lxml_5etree__receiveParserError; -+__pyx_v_sax->serror = (xmlStructuredErrorFunc)__pyx_
core.git: Branch 'libreoffice-7-6-7' - svx/source
svx/source/dialog/svxruler.cxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 96ec4e649ac9eb0528281e08f9a13e20545dd9f6 Author: Xisco Fauli AuthorDate: Thu Apr 25 15:52:29 2024 +0200 Commit: Michael Weghorn CommitDate: Tue May 7 07:46:11 2024 +0200 svx: Avoid divide by 0 See https://crashreport.libreoffice.org/stats/signature/SvxRuler::UpdateTabs() Change-Id: Ie08c54d1a1b40bcc42da9f81c893f496fff433a8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166626 Tested-by: Jenkins Tested-by: Caolán McNamara Reviewed-by: Caolán McNamara (cherry picked from commit 90548039f09d4bc773bf6879a62d544adfa175db) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167214 Reviewed-by: Aron Budea Tested-by: Michael Weghorn Reviewed-by: Ilmari Lauhakangas Reviewed-by: Michael Weghorn diff --git a/svx/source/dialog/svxruler.cxx b/svx/source/dialog/svxruler.cxx index ffc34cd5bfb5..8c787b68706e 100644 --- a/svx/source/dialog/svxruler.cxx +++ b/svx/source/dialog/svxruler.cxx @@ -1032,7 +1032,7 @@ void SvxRuler::UpdateTabs() lCurrentDefTabDist = mxTabStopItem->GetDefaultDistance(); tools::Long nDefTabDist = ConvertHPosPixel(lCurrentDefTabDist); -const sal_uInt16 nDefTabBuf = lPosPixel > lRightIndent || lLastTab > lRightIndent +const sal_uInt16 nDefTabBuf = lPosPixel > lRightIndent || lLastTab > lRightIndent || nDefTabDist == 0 ? 0 : static_cast( (lRightIndent - lPosPixel) / nDefTabDist );
core.git: Branch 'libreoffice-7-6' - svx/source
svx/source/dialog/svxruler.cxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 07c517f5ebaac271fddd03db3adf5d4887a6ad23 Author: Xisco Fauli AuthorDate: Thu Apr 25 15:52:29 2024 +0200 Commit: Aron Budea CommitDate: Tue May 7 03:44:18 2024 +0200 svx: Avoid divide by 0 See https://crashreport.libreoffice.org/stats/signature/SvxRuler::UpdateTabs() Change-Id: Ie08c54d1a1b40bcc42da9f81c893f496fff433a8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166626 Tested-by: Jenkins Tested-by: Caolán McNamara Reviewed-by: Caolán McNamara (cherry picked from commit 90548039f09d4bc773bf6879a62d544adfa175db) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166675 Reviewed-by: Aron Budea diff --git a/svx/source/dialog/svxruler.cxx b/svx/source/dialog/svxruler.cxx index ffc34cd5bfb5..8c787b68706e 100644 --- a/svx/source/dialog/svxruler.cxx +++ b/svx/source/dialog/svxruler.cxx @@ -1032,7 +1032,7 @@ void SvxRuler::UpdateTabs() lCurrentDefTabDist = mxTabStopItem->GetDefaultDistance(); tools::Long nDefTabDist = ConvertHPosPixel(lCurrentDefTabDist); -const sal_uInt16 nDefTabBuf = lPosPixel > lRightIndent || lLastTab > lRightIndent +const sal_uInt16 nDefTabBuf = lPosPixel > lRightIndent || lLastTab > lRightIndent || nDefTabDist == 0 ? 0 : static_cast( (lRightIndent - lPosPixel) / nDefTabDist );
core.git: Branch 'libreoffice-24-2' - svx/source
svx/source/dialog/svxruler.cxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 35c0afcf0a0428670e3e1998f222440b504ae0c8 Author: Xisco Fauli AuthorDate: Thu Apr 25 15:52:29 2024 +0200 Commit: Aron Budea CommitDate: Tue May 7 03:42:38 2024 +0200 svx: Avoid divide by 0 See https://crashreport.libreoffice.org/stats/signature/SvxRuler::UpdateTabs() Change-Id: Ie08c54d1a1b40bcc42da9f81c893f496fff433a8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166626 Tested-by: Jenkins Tested-by: Caolán McNamara Reviewed-by: Caolán McNamara (cherry picked from commit 90548039f09d4bc773bf6879a62d544adfa175db) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166674 Reviewed-by: Aron Budea diff --git a/svx/source/dialog/svxruler.cxx b/svx/source/dialog/svxruler.cxx index 6323583fd271..17c4edaa930d 100644 --- a/svx/source/dialog/svxruler.cxx +++ b/svx/source/dialog/svxruler.cxx @@ -1033,7 +1033,7 @@ void SvxRuler::UpdateTabs() lCurrentDefTabDist = mxTabStopItem->GetDefaultDistance(); tools::Long nDefTabDist = ConvertHPosPixel(lCurrentDefTabDist); -const sal_uInt16 nDefTabBuf = lPosPixel > lRightIndent || lLastTab > lRightIndent +const sal_uInt16 nDefTabBuf = lPosPixel > lRightIndent || lLastTab > lRightIndent || nDefTabDist == 0 ? 0 : static_cast( (lRightIndent - lPosPixel) / nDefTabDist );
core.git: svgio/inc svgio/qa svgio/source
svgio/inc/svgstyleattributes.hxx |7 + svgio/qa/cppunit/SvgImportTest.cxx|8 + svgio/qa/cppunit/data/contextFill.svg |8 + svgio/source/svgreader/svgstyleattributes.cxx | 36 -- 4 files changed, 57 insertions(+), 2 deletions(-) New commits: commit 3b0f96a0773f19f7d5bdb5725ff9667eb4809215 Author: Xisco Fauli AuthorDate: Mon May 6 17:15:59 2024 +0200 Commit: Xisco Fauli CommitDate: Mon May 6 22:02:01 2024 +0200 tdf#155651: Add support for "context-fill" Change-Id: I6f96cc7c059ece5f9401fc0ae552cf279e53109c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167230 Reviewed-by: Xisco Fauli Tested-by: Jenkins diff --git a/svgio/inc/svgstyleattributes.hxx b/svgio/inc/svgstyleattributes.hxx index 61a3816e82cb..30cbab965644 100644 --- a/svgio/inc/svgstyleattributes.hxx +++ b/svgio/inc/svgstyleattributes.hxx @@ -247,6 +247,9 @@ namespace svgio::svgreader // #121221# Defines if evtl. an empty array *is* set boolmbStrokeDasharraySet : 1; +// tdf#155651 Defines if 'context-fill' is used in fill +boolmbContextFill : 1; + // tdf#155651 Defines if 'context-stroke' is used in stroke boolmbContextStroke : 1; @@ -254,6 +257,7 @@ namespace svgio::svgreader OUStringmaNodeFillURL; OUStringmaNodeStrokeURL; +const basegfx::BColor* maContextFill; const basegfx::BColor* maContextStroke; /// internal helpers @@ -332,6 +336,9 @@ namespace svgio::svgreader /// stroke content const basegfx::BColor* getStroke() const; +/// context fill content +const basegfx::BColor* getContextFill() const; + /// context stroke content const basegfx::BColor* getContextStroke() const; diff --git a/svgio/qa/cppunit/SvgImportTest.cxx b/svgio/qa/cppunit/SvgImportTest.cxx index c12f5abaaf16..dc2aa1a6eaf4 100644 --- a/svgio/qa/cppunit/SvgImportTest.cxx +++ b/svgio/qa/cppunit/SvgImportTest.cxx @@ -646,6 +646,14 @@ CPPUNIT_TEST_FIXTURE(Test, testMarkerOrient) assertXPath(pDocument, "/primitive2D/transform/transform[2]"_ostr, "xy33"_ostr, "1"); } +CPPUNIT_TEST_FIXTURE(Test, testContextFill) +{ +xmlDocUniquePtr pDocument = dumpAndParseSvg(u"/svgio/qa/cppunit/data/contextFill.svg"); + +assertXPath(pDocument, "/primitive2D/transform/polypolygonstroke/line"_ostr, "color"_ostr, "#ff"); +assertXPath(pDocument, "/primitive2D/transform/transform/polypolygoncolor"_ostr, "color"_ostr, "#ff"); +} + CPPUNIT_TEST_FIXTURE(Test, testContextStroke) { xmlDocUniquePtr pDocument = dumpAndParseSvg(u"/svgio/qa/cppunit/data/contextStroke.svg"); diff --git a/svgio/qa/cppunit/data/contextFill.svg b/svgio/qa/cppunit/data/contextFill.svg new file mode 100644 index ..399d3c16b09e --- /dev/null +++ b/svgio/qa/cppunit/data/contextFill.svg @@ -0,0 +1,8 @@ +http://www.w3.org/2000/svg;> + + + + + + + diff --git a/svgio/source/svgreader/svgstyleattributes.cxx b/svgio/source/svgreader/svgstyleattributes.cxx index f694d8b1cfd9..cd6a705114a9 100644 --- a/svgio/source/svgreader/svgstyleattributes.cxx +++ b/svgio/source/svgreader/svgstyleattributes.cxx @@ -823,6 +823,11 @@ namespace svgio::svgreader rMarkerTransform.identity(); rClipRange.reset(); +// Set the current fill to the marker before calling getMarkerPrimitives, +// which calls decomposeSvgNode to decompose the children of the marker. +// If any of the children uses 'fill="context-fill"', then it will use it + const_cast(rMarker.getSvgStyleAttributes())->maContextFill = getFill(); + // Set the current stroke to the marker before calling getMarkerPrimitives, // which calls decomposeSvgNode to decompose the children of the marker. // If any of the children uses 'stroke="context-stroke"', then it will use it @@ -1298,9 +1303,11 @@ namespace svgio::svgreader maBaselineShift(BaselineShift::Baseline), maBaselineShiftNumber(0), maDominantBaseline(DominantBaseline::Auto), -maResolvingParent(33, 0), +maResolvingParent(34, 0), mbStrokeDasharraySet(false), +mbContextFill(false), mbContextStroke(false), +maContextFill(nullptr), maContextStroke(nullptr) { } @@ -1321,7 +1328,11 @@ namespace svgio::svgreader OUString aURL; SvgNumber aOpacity; -
core.git: Branch 'libreoffice-24-2' - dictionaries
dictionaries |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 2165fa986408a2ee53c56ee18936f69ed97d40e3 Author: Xisco Fauli AuthorDate: Mon May 6 18:36:21 2024 +0200 Commit: Gerrit Code Review CommitDate: Mon May 6 18:36:21 2024 +0200 Update git submodules * Update dictionaries from branch 'libreoffice-24-2' to 43715e23e6ff1f153689950db0ea1273b6a7bf3f - upgrade Ukrainian dictionaries to 6.4.4 Change-Id: Idf246940bdf58844212420975ab52c19b08327ec Reviewed-on: https://gerrit.libreoffice.org/c/dictionaries/+/166872 Tested-by: Xisco Fauli Reviewed-by: Xisco Fauli Reviewed-by: Andriy Rysin (cherry picked from commit 0ca7301c3c00d6e7936fd912ba775d0008f7fee4) Reviewed-on: https://gerrit.libreoffice.org/c/dictionaries/+/166906 Tested-by: Adolfo Jayme Barrientos Reviewed-by: Adolfo Jayme Barrientos diff --git a/dictionaries b/dictionaries index a62f9b3e6b2d..43715e23e6ff 16 --- a/dictionaries +++ b/dictionaries @@ -1 +1 @@ -Subproject commit a62f9b3e6b2de1366d826a5bacf19ae63e527ead +Subproject commit 43715e23e6ff1f153689950db0ea1273b6a7bf3f
dictionaries.git: Branch 'libreoffice-24-2' - uk_UA/description.xml uk_UA/uk_UA.aff uk_UA/uk_UA.dic
uk_UA/description.xml |2 uk_UA/uk_UA.aff | 2459 uk_UA/uk_UA.dic |142223 +- 3 files changed, 74844 insertions(+), 69840 deletions(-) New commits: commit 43715e23e6ff1f153689950db0ea1273b6a7bf3f Author: Xisco Fauli AuthorDate: Mon Apr 29 18:14:57 2024 +0200 Commit: Adolfo Jayme Barrientos CommitDate: Mon May 6 18:36:21 2024 +0200 upgrade Ukrainian dictionaries to 6.4.4 Change-Id: Idf246940bdf58844212420975ab52c19b08327ec Reviewed-on: https://gerrit.libreoffice.org/c/dictionaries/+/166872 Tested-by: Xisco Fauli Reviewed-by: Xisco Fauli Reviewed-by: Andriy Rysin (cherry picked from commit 0ca7301c3c00d6e7936fd912ba775d0008f7fee4) Reviewed-on: https://gerrit.libreoffice.org/c/dictionaries/+/166906 Tested-by: Adolfo Jayme Barrientos Reviewed-by: Adolfo Jayme Barrientos diff --git a/uk_UA/description.xml b/uk_UA/description.xml index 4941499..f221da9 100644 --- a/uk_UA/description.xml +++ b/uk_UA/description.xml @@ -1,6 +1,6 @@ http://openoffice.org/extensions/description/2006; xmlns:d="http://openoffice.org/extensions/description/2006; xmlns:xlink="http://www.w3.org/1999/xlink;> - + Ukrainian spelling dictionary, hyphenation rules, and thesaurus diff --git a/uk_UA/uk_UA.aff b/uk_UA/uk_UA.aff index 3faea89..2343c2a 100644 --- a/uk_UA/uk_UA.aff +++ b/uk_UA/uk_UA.aff @@ -287,12 +287,12 @@ SFX ( ін ьонах лін SFX ( ір ьорах лір SFX ( іт ьотах літ SFX ) Y 6 +SFX ) сти дучи [аея]сти SFX ) атися учись жатися SFX ) атися учися жатися ### -SFX ) стися дучись ястися -SFX ) стися дучися ястися ### SFX ) ати учи жати -SFX ) сти дучи ясти +SFX ) стися дучись [аея]стися +SFX ) стися дучися [аея]стися ### SFX * Y 3 SFX * ік оці ік SFX * іг озі іг @@ -326,126 +326,126 @@ SFX - ь ей ь SFX - ь ям ь SFX - ь ями ь SFX - ь ях ь -SFX . Y 5 -SFX . е а ще -SFX . е 0 ще -SFX . е ам ще -SFX . е ами ще -SFX . е ах ще -SFX 0 Y 113 -SFX 0 ій ою ій -SFX 0 ій оєві ій -SFX 0 ій оєм ій -SFX 0 ій ої ій -SFX 0 іб обі .іб -SFX 0 ів ові .ів -SFX 0 ід оді .ід -SFX 0 іж ожі .іж -SFX 0 із озі .із -SFX 0 ім омі .ім -SFX 0 ін оні .ін -SFX 0 іп опі .іп -SFX 0 ір орі .ір -SFX 0 іс осі .іс -SFX 0 іт оті .іт -SFX 0 іш оші .іш -SFX 0 ізд озді ізд -SFX 0 ізт озті ізт -SFX 0 ірд орді ірд -SFX 0 ірт орті ірт -SFX 0 ісд осді ісд -SFX 0 іст ості іст -SFX 0 ізд озду ізд -SFX 0 ізк озку ізк -SFX 0 ізт озту ізт -SFX 0 ірд орду ірд -SFX 0 ірк орку ірк -SFX 0 ірт орту ірт -SFX 0 ісд осду ісд -SFX 0 іск оску іск -SFX 0 іст осту іст -SFX 0 ізд оздові ізд -SFX 0 ізк озкові ізк -SFX 0 ізт озтові ізт -SFX 0 ірд ордові ірд -SFX 0 ірк оркові ірк -SFX 0 ірт ортові ірт -SFX 0 ісд осдові ісд -SFX 0 іск оскові іск -SFX 0 іст остові іст -SFX 0 ізд оздом ізд -SFX 0 ізк озком ізк -SFX 0 ізт озтом ізт -SFX 0 ірд ордом ірд -SFX 0 ірк орком ірк -SFX 0 ірт ортом ірт -SFX 0 ісд осдом ісд -SFX 0 іск оском іск -SFX 0 іст остом іст -SFX 0 іб обові іб -SFX 0 ід одові ід -SFX 0 іг огові іг -SFX 0 із озові із -SFX 0 ік окові ік -SFX 0 іл олові іл -SFX 0 ім омові ім -SFX 0 ін онові ін -SFX 0 іп опові іп -SFX 0 ір орові ір -SFX 0 іс осові іс -SFX 0 іт отові іт -SFX 0 ік оці потік -SFX 0 іж ожу іж -SFX 0 іш ошу іш -SFX 0 іж ожем іж -SFX 0 іш ошем іш -SFX 0 іж ожеві іж -SFX 0 іш ошеві іш -SFX 0 інь оню інь -SFX 0 інь оневі інь -SFX 0 інь онем інь -SFX 0 інь оні інь -SFX 0 іль олю іль -SFX 0 іль олеві іль -SFX 0 іль олем іль -SFX 0 іль олі іль -SFX 0 іб обу іб -SFX 0 ів ову ів -SFX 0 ід оду ід -SFX 0 іг огу іг -SFX 0 із озу із -SFX 0 ік оку ік -SFX 0 іл олу іл -SFX 0 ім ому ім -SFX 0 ін ону ін -SFX 0 іп опу іп -SFX 0 ір ору ір -SFX 0 іс осу іс -SFX 0 іт оту іт -SFX 0 іч очу іч -SFX 0 іб обом іб -SFX 0 ів овом ів -SFX 0 ід одом ід -SFX 0 іг огом іг -SFX 0 із озом із -SFX 0 ік оком ік -SFX 0 іл олом іл -SFX 0 ім омом ім -SFX 0 ін оном ін -SFX 0 іп опом іп -SFX 0 ір ором ір -SFX 0 іс осом іс -SFX 0 іт отом іт -SFX 0 іч очом іч -SFX 0 ік оці стік -SFX 0 івш овшу івш -SFX 0 івш овшеві івш -SFX 0 івш овшем івш -SFX 0 івш овші івш -SFX 0 ість остю ість -SFX 0 ість остеві ість -SFX 0 ість остем ість -SFX 0 ість ості ість +SFX . Y 113 +SFX . ій ою ій +SFX . ій оєві ій +SFX . ій оєм ій +SFX . ій ої ій +SFX . іб обі .іб +SFX . ів ові .ів +SFX . ід оді .ід +SFX . іж ожі .іж +SFX . із озі .із +SFX . ім омі .ім +SFX . ін оні .ін +SFX . іп опі .іп +SFX . ір орі .ір +SFX . іс осі .іс +SFX . іт оті .іт +SFX . іш оші .іш +SFX . ізд озді ізд +SFX . ізт озті ізт +SFX . ірд орді ірд +SFX . ірт орті ірт +SFX . ісд осді ісд +SFX . іст ості іст +SFX . ізд озду ізд +SFX . ізк озку ізк +SFX . ізт озту ізт +SFX . ірд орду ірд +SFX . ірк орку ірк +SFX . ірт орту ірт +SFX . ісд осду ісд +SFX . іск оску іск +SFX . іст осту іст +SFX . ізд оздові ізд +SFX . ізк озкові ізк +SFX . ізт озтові ізт +SFX . ірд ордові ірд +SFX . ірк оркові ірк +SFX . ірт ортові ірт +SFX . ісд осдові ісд +SFX . іск оскові іск +SFX . іст остові іст +SFX . ізд о
core.git: Branch 'libreoffice-24-2' - 2 commits - editeng/source sd/qa svgio/qa
editeng/source/editeng/impedit3.cxx|2 - sd/qa/unit/data/odg/adjust-to-contour.fodg | 52 + sd/qa/unit/layout-tests.cxx| 48 ++ svgio/qa/cppunit/SvgImportTest.cxx | 16 svgio/qa/cppunit/data/tdf160773.svg|5 ++ 5 files changed, 122 insertions(+), 1 deletion(-) New commits: commit b2dc48571714a84b1eeff127e86c07b29b579e43 Author: Xisco Fauli AuthorDate: Tue Apr 23 11:54:47 2024 +0200 Commit: Xisco Fauli CommitDate: Mon May 6 15:44:53 2024 +0200 tdf#159661, tdf#160773: svgio: Add unittest Change-Id: I2d0b96f13e02ac81b97ea347889c76770c22a989 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166509 Tested-by: Jenkins Reviewed-by: Xisco Fauli Signed-off-by: Xisco Fauli Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167053 diff --git a/svgio/qa/cppunit/SvgImportTest.cxx b/svgio/qa/cppunit/SvgImportTest.cxx index 407e8aa0c3bb..b4aa5250f5ec 100644 --- a/svgio/qa/cppunit/SvgImportTest.cxx +++ b/svgio/qa/cppunit/SvgImportTest.cxx @@ -1960,6 +1960,22 @@ CPPUNIT_TEST_FIXTURE(Test, testTdf156837) assertXPath(pDocument, "/primitive2D/transform/textsimpleportion[2]"_ostr, "text"_ostr, "3"); } +CPPUNIT_TEST_FIXTURE(Test, testTdf160773) +{ +xmlDocUniquePtr pDocument = dumpAndParseSvg(u"/svgio/qa/cppunit/data/tdf160773.svg"); + +// tdf#160773 Check there is a rectangle +assertXPath(pDocument, "/primitive2D/transform/mask/transform/polypolygoncolor"_ostr, "color"_ostr, "#ff"); + +// tdf#159661 Check there is text in the right position +assertXPath(pDocument, "/primitive2D/transform/mask/transform/textsimpleportion"_ostr, 1); +assertXPath(pDocument, "/primitive2D/transform/mask/transform/textsimpleportion"_ostr, "x"_ostr, "0"); +assertXPath(pDocument, "/primitive2D/transform/mask/transform/textsimpleportion"_ostr, "y"_ostr, "0"); +assertXPath(pDocument, "/primitive2D/transform/mask/transform/textsimpleportion"_ostr, "height"_ostr, "0"); +assertXPath(pDocument, "/primitive2D/transform/mask/transform/textsimpleportion"_ostr, "width"_ostr, "0"); +assertXPath(pDocument, "/primitive2D/transform/mask/transform/textsimpleportion"_ostr, "text"_ostr, "Red"); +} + CPPUNIT_TEST_FIXTURE(Test, testTdf156271) { Primitive2DSequence aSequence = parseSvg(u"/svgio/qa/cppunit/data/tdf156271.svg"); diff --git a/svgio/qa/cppunit/data/tdf160773.svg b/svgio/qa/cppunit/data/tdf160773.svg new file mode 100644 index ..812c0824862c --- /dev/null +++ b/svgio/qa/cppunit/data/tdf160773.svg @@ -0,0 +1,5 @@ + +http://www.w3.org/2000/svg;> + Red + + commit 9f5664f4d34e8f04cc18dc252cad4b3b853db882 Author: Mike Kaganski AuthorDate: Fri May 3 14:14:26 2024 +0500 Commit: Xisco Fauli CommitDate: Mon May 6 15:44:40 2024 +0200 tdf#152906: use correct Y offset GetEditCursor now returns the position relative to the line, not to the whole text. In ImpEditEngine::CreateLines, its use wasn't fixed, and so the Y position of all lines in the calculation was the same, thus adjusting to the same contour's horizontal stripe. Change-Id: I16362bab47f3064281eefb45a12834d836a8ada3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167042 Tested-by: Jenkins Reviewed-by: Mike Kaganski Signed-off-by: Xisco Fauli Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167188 diff --git a/editeng/source/editeng/impedit3.cxx b/editeng/source/editeng/impedit3.cxx index b24cc004011c..9817cf9441e3 100644 --- a/editeng/source/editeng/impedit3.cxx +++ b/editeng/source/editeng/impedit3.cxx @@ -866,7 +866,7 @@ bool ImpEditEngine::CreateLines( sal_Int32 nPara, sal_uInt32 nStartPosY ) { GetTextRanger()->SetVertical( IsEffectivelyVertical() ); -tools::Long nTextY = nStartPosY + GetEditCursor( pParaPortion, pLine, pLine->GetStart(), GetCursorFlags::NONE ).Top(); +tools::Long nTextY = nCurrentPosY + GetEditCursor( pParaPortion, pLine, pLine->GetStart(), GetCursorFlags::NONE ).Top(); if ( !bSameLineAgain ) { SeekCursor( pNode, nTmpPos+1, aTmpFont ); diff --git a/sd/qa/unit/data/odg/adjust-to-contour.fodg b/sd/qa/unit/data/odg/adjust-to-contour.fodg new file mode 100644 index ..a5ec6fed74fc --- /dev/null +++ b/sd/qa/unit/data/odg/adjust-to-contour.fodg @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Lorem ipsum dolor sit amet, consectetur adipi
core.git: Branch 'libreoffice-24-2' - svgio/inc svgio/qa svgio/source
svgio/inc/svgstyleattributes.hxx |8 + svgio/qa/cppunit/SvgImportTest.cxx| 11 +++ svgio/qa/cppunit/data/contextStroke.svg | 14 + svgio/source/svgreader/svgmarkernode.cxx |2 - svgio/source/svgreader/svgstyleattributes.cxx | 37 +++--- 5 files changed, 68 insertions(+), 4 deletions(-) New commits: commit f4a868ce3b7e5fe6e708f2c795402d646e0746d5 Author: Xisco Fauli AuthorDate: Thu May 2 22:16:36 2024 +0200 Commit: Xisco Fauli CommitDate: Fri May 3 18:26:48 2024 +0200 tdf#155651: Add support for "context-stroke" Change-Id: Ib4f4a7b644d0d6c6b36e31b80fd7adc18999110d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166908 Reviewed-by: Xisco Fauli Tested-by: Jenkins diff --git a/svgio/inc/svgstyleattributes.hxx b/svgio/inc/svgstyleattributes.hxx index c5c095462f3d..61a3816e82cb 100644 --- a/svgio/inc/svgstyleattributes.hxx +++ b/svgio/inc/svgstyleattributes.hxx @@ -247,10 +247,15 @@ namespace svgio::svgreader // #121221# Defines if evtl. an empty array *is* set boolmbStrokeDasharraySet : 1; +// tdf#155651 Defines if 'context-stroke' is used in stroke +boolmbContextStroke : 1; + // tdf#94765 Check id references in gradient/pattern getters OUStringmaNodeFillURL; OUStringmaNodeStrokeURL; +const basegfx::BColor* maContextStroke; + /// internal helpers void add_fillGradient( const basegfx::B2DPolyPolygon& rPath, @@ -327,6 +332,9 @@ namespace svgio::svgreader /// stroke content const basegfx::BColor* getStroke() const; +/// context stroke content +const basegfx::BColor* getContextStroke() const; + /// stop color content const basegfx::BColor& getStopColor() const; diff --git a/svgio/qa/cppunit/SvgImportTest.cxx b/svgio/qa/cppunit/SvgImportTest.cxx index 2c9f9ea72485..407e8aa0c3bb 100644 --- a/svgio/qa/cppunit/SvgImportTest.cxx +++ b/svgio/qa/cppunit/SvgImportTest.cxx @@ -669,6 +669,17 @@ CPPUNIT_TEST_FIXTURE(Test, testMarkerOrient) assertXPath(pDocument, "/primitive2D/transform/transform[2]"_ostr, "xy33"_ostr, "1"); } +CPPUNIT_TEST_FIXTURE(Test, testContextStroke) +{ +xmlDocUniquePtr pDocument = dumpAndParseSvg(u"/svgio/qa/cppunit/data/contextStroke.svg"); + +assertXPath(pDocument, "/primitive2D/transform/polypolygonstroke/line"_ostr, "color"_ostr, "#ff"); +assertXPath(pDocument, "/primitive2D/transform/transform[1]/polypolygonstroke/line"_ostr, "color"_ostr, "#ff"); +assertXPath(pDocument, "/primitive2D/transform/transform[2]/polypolygonstroke/line"_ostr, "color"_ostr, "#ff"); +assertXPath(pDocument, "/primitive2D/transform/transform[3]/polypolygonstroke/line"_ostr, "color"_ostr, "#ff"); +assertXPath(pDocument, "/primitive2D/transform/transform[4]/polypolygonstroke/line"_ostr, "color"_ostr, "#ff"); +} + CPPUNIT_TEST_FIXTURE(Test, testMarkerInPresentation) { Primitive2DSequence aSequence = parseSvg(u"/svgio/qa/cppunit/data/markerInPresentation.svg"); diff --git a/svgio/qa/cppunit/data/contextStroke.svg b/svgio/qa/cppunit/data/contextStroke.svg new file mode 100644 index ..5a9b27d69c84 --- /dev/null +++ b/svgio/qa/cppunit/data/contextStroke.svg @@ -0,0 +1,14 @@ +http://www.w3.org/2000/svg; viewBox="0 0 100 100"> + +path { + fill: none; + stroke-width: 4px; + marker: url(#diamond); +} + + + + + + + diff --git a/svgio/source/svgreader/svgmarkernode.cxx b/svgio/source/svgreader/svgmarkernode.cxx index 083471b49c6b..2279920634a6 100644 --- a/svgio/source/svgreader/svgmarkernode.cxx +++ b/svgio/source/svgreader/svgmarkernode.cxx @@ -174,7 +174,7 @@ namespace svgio::svgreader const drawinglayer::primitive2d::Primitive2DContainer& SvgMarkerNode::getMarkerPrimitives() const { -if(aPrimitives.empty() && Display::None != getDisplay()) +if(Display::None != getDisplay()) { decomposeSvgNode(const_cast< SvgMarkerNode* >(this)->aPrimitives, true); } diff --git a/svgio/source/svgreader/svgstyleattributes.cxx b/svgio/source/svgreader/svgstyleattributes.cxx index 50f72199e40b..81ef74d62f63 100644 --- a/svgio/source/svgreader/svgstyleattributes.cxx +++ b/svgio/source/svgreader/svgstyleattributes.cxx @@ -817,6 +817,11 @@ namespace svgio::svgreader rMarkerTransform.identity(); rClipRange.reset(); +
core.git: Branch 'libreoffice-7-6' - dictionaries
dictionaries |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit a542a01832f63016b99b453c90ec4bbe3e86c8e7 Author: Xisco Fauli AuthorDate: Fri May 3 12:06:28 2024 +0200 Commit: Gerrit Code Review CommitDate: Fri May 3 12:06:28 2024 +0200 Update git submodules * Update dictionaries from branch 'libreoffice-7-6' to 0c5d6db9f4d3e465547e3a177360662e0f475d62 - upgrade Ukrainian dictionaries to 6.4.4 Change-Id: Idf246940bdf58844212420975ab52c19b08327ec Reviewed-on: https://gerrit.libreoffice.org/c/dictionaries/+/166872 Tested-by: Xisco Fauli Reviewed-by: Xisco Fauli Reviewed-by: Andriy Rysin (cherry picked from commit 0ca7301c3c00d6e7936fd912ba775d0008f7fee4) Reviewed-on: https://gerrit.libreoffice.org/c/dictionaries/+/166907 Tested-by: Christian Lohmaier Reviewed-by: Christian Lohmaier diff --git a/dictionaries b/dictionaries index 7aa013596e97..0c5d6db9f4d3 16 --- a/dictionaries +++ b/dictionaries @@ -1 +1 @@ -Subproject commit 7aa013596e97ce58bb4def48e6952062ae52cf5f +Subproject commit 0c5d6db9f4d3e465547e3a177360662e0f475d62
dictionaries.git: Branch 'libreoffice-7-6' - uk_UA/description.xml uk_UA/uk_UA.aff uk_UA/uk_UA.dic
uk_UA/description.xml |2 uk_UA/uk_UA.aff | 2459 uk_UA/uk_UA.dic |142223 +- 3 files changed, 74844 insertions(+), 69840 deletions(-) New commits: commit 0c5d6db9f4d3e465547e3a177360662e0f475d62 Author: Xisco Fauli AuthorDate: Mon Apr 29 18:14:57 2024 +0200 Commit: Christian Lohmaier CommitDate: Fri May 3 12:06:27 2024 +0200 upgrade Ukrainian dictionaries to 6.4.4 Change-Id: Idf246940bdf58844212420975ab52c19b08327ec Reviewed-on: https://gerrit.libreoffice.org/c/dictionaries/+/166872 Tested-by: Xisco Fauli Reviewed-by: Xisco Fauli Reviewed-by: Andriy Rysin (cherry picked from commit 0ca7301c3c00d6e7936fd912ba775d0008f7fee4) Reviewed-on: https://gerrit.libreoffice.org/c/dictionaries/+/166907 Tested-by: Christian Lohmaier Reviewed-by: Christian Lohmaier diff --git a/uk_UA/description.xml b/uk_UA/description.xml index 4941499..f221da9 100644 --- a/uk_UA/description.xml +++ b/uk_UA/description.xml @@ -1,6 +1,6 @@ http://openoffice.org/extensions/description/2006; xmlns:d="http://openoffice.org/extensions/description/2006; xmlns:xlink="http://www.w3.org/1999/xlink;> - + Ukrainian spelling dictionary, hyphenation rules, and thesaurus diff --git a/uk_UA/uk_UA.aff b/uk_UA/uk_UA.aff index 3faea89..2343c2a 100644 --- a/uk_UA/uk_UA.aff +++ b/uk_UA/uk_UA.aff @@ -287,12 +287,12 @@ SFX ( ін ьонах лін SFX ( ір ьорах лір SFX ( іт ьотах літ SFX ) Y 6 +SFX ) сти дучи [аея]сти SFX ) атися учись жатися SFX ) атися учися жатися ### -SFX ) стися дучись ястися -SFX ) стися дучися ястися ### SFX ) ати учи жати -SFX ) сти дучи ясти +SFX ) стися дучись [аея]стися +SFX ) стися дучися [аея]стися ### SFX * Y 3 SFX * ік оці ік SFX * іг озі іг @@ -326,126 +326,126 @@ SFX - ь ей ь SFX - ь ям ь SFX - ь ями ь SFX - ь ях ь -SFX . Y 5 -SFX . е а ще -SFX . е 0 ще -SFX . е ам ще -SFX . е ами ще -SFX . е ах ще -SFX 0 Y 113 -SFX 0 ій ою ій -SFX 0 ій оєві ій -SFX 0 ій оєм ій -SFX 0 ій ої ій -SFX 0 іб обі .іб -SFX 0 ів ові .ів -SFX 0 ід оді .ід -SFX 0 іж ожі .іж -SFX 0 із озі .із -SFX 0 ім омі .ім -SFX 0 ін оні .ін -SFX 0 іп опі .іп -SFX 0 ір орі .ір -SFX 0 іс осі .іс -SFX 0 іт оті .іт -SFX 0 іш оші .іш -SFX 0 ізд озді ізд -SFX 0 ізт озті ізт -SFX 0 ірд орді ірд -SFX 0 ірт орті ірт -SFX 0 ісд осді ісд -SFX 0 іст ості іст -SFX 0 ізд озду ізд -SFX 0 ізк озку ізк -SFX 0 ізт озту ізт -SFX 0 ірд орду ірд -SFX 0 ірк орку ірк -SFX 0 ірт орту ірт -SFX 0 ісд осду ісд -SFX 0 іск оску іск -SFX 0 іст осту іст -SFX 0 ізд оздові ізд -SFX 0 ізк озкові ізк -SFX 0 ізт озтові ізт -SFX 0 ірд ордові ірд -SFX 0 ірк оркові ірк -SFX 0 ірт ортові ірт -SFX 0 ісд осдові ісд -SFX 0 іск оскові іск -SFX 0 іст остові іст -SFX 0 ізд оздом ізд -SFX 0 ізк озком ізк -SFX 0 ізт озтом ізт -SFX 0 ірд ордом ірд -SFX 0 ірк орком ірк -SFX 0 ірт ортом ірт -SFX 0 ісд осдом ісд -SFX 0 іск оском іск -SFX 0 іст остом іст -SFX 0 іб обові іб -SFX 0 ід одові ід -SFX 0 іг огові іг -SFX 0 із озові із -SFX 0 ік окові ік -SFX 0 іл олові іл -SFX 0 ім омові ім -SFX 0 ін онові ін -SFX 0 іп опові іп -SFX 0 ір орові ір -SFX 0 іс осові іс -SFX 0 іт отові іт -SFX 0 ік оці потік -SFX 0 іж ожу іж -SFX 0 іш ошу іш -SFX 0 іж ожем іж -SFX 0 іш ошем іш -SFX 0 іж ожеві іж -SFX 0 іш ошеві іш -SFX 0 інь оню інь -SFX 0 інь оневі інь -SFX 0 інь онем інь -SFX 0 інь оні інь -SFX 0 іль олю іль -SFX 0 іль олеві іль -SFX 0 іль олем іль -SFX 0 іль олі іль -SFX 0 іб обу іб -SFX 0 ів ову ів -SFX 0 ід оду ід -SFX 0 іг огу іг -SFX 0 із озу із -SFX 0 ік оку ік -SFX 0 іл олу іл -SFX 0 ім ому ім -SFX 0 ін ону ін -SFX 0 іп опу іп -SFX 0 ір ору ір -SFX 0 іс осу іс -SFX 0 іт оту іт -SFX 0 іч очу іч -SFX 0 іб обом іб -SFX 0 ів овом ів -SFX 0 ід одом ід -SFX 0 іг огом іг -SFX 0 із озом із -SFX 0 ік оком ік -SFX 0 іл олом іл -SFX 0 ім омом ім -SFX 0 ін оном ін -SFX 0 іп опом іп -SFX 0 ір ором ір -SFX 0 іс осом іс -SFX 0 іт отом іт -SFX 0 іч очом іч -SFX 0 ік оці стік -SFX 0 івш овшу івш -SFX 0 івш овшеві івш -SFX 0 івш овшем івш -SFX 0 івш овші івш -SFX 0 ість остю ість -SFX 0 ість остеві ість -SFX 0 ість остем ість -SFX 0 ість ості ість +SFX . Y 113 +SFX . ій ою ій +SFX . ій оєві ій +SFX . ій оєм ій +SFX . ій ої ій +SFX . іб обі .іб +SFX . ів ові .ів +SFX . ід оді .ід +SFX . іж ожі .іж +SFX . із озі .із +SFX . ім омі .ім +SFX . ін оні .ін +SFX . іп опі .іп +SFX . ір орі .ір +SFX . іс осі .іс +SFX . іт оті .іт +SFX . іш оші .іш +SFX . ізд озді ізд +SFX . ізт озті ізт +SFX . ірд орді ірд +SFX . ірт орті ірт +SFX . ісд осді ісд +SFX . іст ості іст +SFX . ізд озду ізд +SFX . ізк озку ізк +SFX . ізт озту ізт +SFX . ірд орду ірд +SFX . ірк орку ірк +SFX . ірт орту ірт +SFX . ісд осду ісд +SFX . іск оску іск +SFX . іст осту іст +SFX . ізд оздові ізд +SFX . ізк озкові ізк +SFX . ізт озтові ізт +SFX . ірд ордові ірд +SFX . ірк оркові ірк +SFX . ірт ортові ірт +SFX . ісд осдові ісд +SFX . іск оскові іск +SFX . іст остові іст +SFX . ізд оздом ізд +SFX .
core.git: svgio/inc svgio/qa svgio/source
svgio/inc/svgstyleattributes.hxx |8 + svgio/qa/cppunit/SvgImportTest.cxx| 11 +++ svgio/qa/cppunit/data/contextStroke.svg | 14 + svgio/source/svgreader/svgmarkernode.cxx |2 - svgio/source/svgreader/svgstyleattributes.cxx | 37 +++--- 5 files changed, 68 insertions(+), 4 deletions(-) New commits: commit d75a37a5829dfcb915f7190d4453c4d4fa25e579 Author: Xisco Fauli AuthorDate: Thu May 2 22:16:36 2024 +0200 Commit: Xisco Fauli CommitDate: Fri May 3 11:50:42 2024 +0200 tdf#155651: Add support for "context-stroke" Change-Id: Ib4f4a7b644d0d6c6b36e31b80fd7adc18999110d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167024 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/svgio/inc/svgstyleattributes.hxx b/svgio/inc/svgstyleattributes.hxx index c5c095462f3d..61a3816e82cb 100644 --- a/svgio/inc/svgstyleattributes.hxx +++ b/svgio/inc/svgstyleattributes.hxx @@ -247,10 +247,15 @@ namespace svgio::svgreader // #121221# Defines if evtl. an empty array *is* set boolmbStrokeDasharraySet : 1; +// tdf#155651 Defines if 'context-stroke' is used in stroke +boolmbContextStroke : 1; + // tdf#94765 Check id references in gradient/pattern getters OUStringmaNodeFillURL; OUStringmaNodeStrokeURL; +const basegfx::BColor* maContextStroke; + /// internal helpers void add_fillGradient( const basegfx::B2DPolyPolygon& rPath, @@ -327,6 +332,9 @@ namespace svgio::svgreader /// stroke content const basegfx::BColor* getStroke() const; +/// context stroke content +const basegfx::BColor* getContextStroke() const; + /// stop color content const basegfx::BColor& getStopColor() const; diff --git a/svgio/qa/cppunit/SvgImportTest.cxx b/svgio/qa/cppunit/SvgImportTest.cxx index 01463a894dd5..c12f5abaaf16 100644 --- a/svgio/qa/cppunit/SvgImportTest.cxx +++ b/svgio/qa/cppunit/SvgImportTest.cxx @@ -646,6 +646,17 @@ CPPUNIT_TEST_FIXTURE(Test, testMarkerOrient) assertXPath(pDocument, "/primitive2D/transform/transform[2]"_ostr, "xy33"_ostr, "1"); } +CPPUNIT_TEST_FIXTURE(Test, testContextStroke) +{ +xmlDocUniquePtr pDocument = dumpAndParseSvg(u"/svgio/qa/cppunit/data/contextStroke.svg"); + +assertXPath(pDocument, "/primitive2D/transform/polypolygonstroke/line"_ostr, "color"_ostr, "#ff"); +assertXPath(pDocument, "/primitive2D/transform/transform[1]/polypolygonstroke/line"_ostr, "color"_ostr, "#ff"); +assertXPath(pDocument, "/primitive2D/transform/transform[2]/polypolygonstroke/line"_ostr, "color"_ostr, "#ff"); +assertXPath(pDocument, "/primitive2D/transform/transform[3]/polypolygonstroke/line"_ostr, "color"_ostr, "#ff"); +assertXPath(pDocument, "/primitive2D/transform/transform[4]/polypolygonstroke/line"_ostr, "color"_ostr, "#ff"); +} + CPPUNIT_TEST_FIXTURE(Test, testMarkerInPresentation) { xmlDocUniquePtr pDocument = dumpAndParseSvg(u"/svgio/qa/cppunit/data/markerInPresentation.svg"); diff --git a/svgio/qa/cppunit/data/contextStroke.svg b/svgio/qa/cppunit/data/contextStroke.svg new file mode 100644 index ..5a9b27d69c84 --- /dev/null +++ b/svgio/qa/cppunit/data/contextStroke.svg @@ -0,0 +1,14 @@ +http://www.w3.org/2000/svg; viewBox="0 0 100 100"> + +path { + fill: none; + stroke-width: 4px; + marker: url(#diamond); +} + + + + + + + diff --git a/svgio/source/svgreader/svgmarkernode.cxx b/svgio/source/svgreader/svgmarkernode.cxx index 083471b49c6b..2279920634a6 100644 --- a/svgio/source/svgreader/svgmarkernode.cxx +++ b/svgio/source/svgreader/svgmarkernode.cxx @@ -174,7 +174,7 @@ namespace svgio::svgreader const drawinglayer::primitive2d::Primitive2DContainer& SvgMarkerNode::getMarkerPrimitives() const { -if(aPrimitives.empty() && Display::None != getDisplay()) +if(Display::None != getDisplay()) { decomposeSvgNode(const_cast< SvgMarkerNode* >(this)->aPrimitives, true); } diff --git a/svgio/source/svgreader/svgstyleattributes.cxx b/svgio/source/svgreader/svgstyleattributes.cxx index 763a7a3cdd96..0253aa42e071 100644 --- a/svgio/source/svgreader/svgstyleattributes.cxx +++ b/svgio/source/svgreader/svgstyleattributes.cxx @@ -817,6 +817,11 @@ namespace svgio::svgreader rMarkerTransform.identity(); rClipRange.reset(); +
dictionaries.git: uk_UA/description.xml uk_UA/uk_UA.aff uk_UA/uk_UA.dic
uk_UA/description.xml |2 uk_UA/uk_UA.aff | 2459 uk_UA/uk_UA.dic |142223 +- 3 files changed, 74844 insertions(+), 69840 deletions(-) New commits: commit 0ca7301c3c00d6e7936fd912ba775d0008f7fee4 Author: Xisco Fauli AuthorDate: Mon Apr 29 18:14:57 2024 +0200 Commit: Xisco Fauli CommitDate: Fri May 3 10:44:03 2024 +0200 upgrade Ukrainian dictionaries to 6.4.4 Change-Id: Idf246940bdf58844212420975ab52c19b08327ec Reviewed-on: https://gerrit.libreoffice.org/c/dictionaries/+/166872 Tested-by: Xisco Fauli Reviewed-by: Xisco Fauli Reviewed-by: Andriy Rysin diff --git a/uk_UA/description.xml b/uk_UA/description.xml index 4941499..f221da9 100644 --- a/uk_UA/description.xml +++ b/uk_UA/description.xml @@ -1,6 +1,6 @@ http://openoffice.org/extensions/description/2006; xmlns:d="http://openoffice.org/extensions/description/2006; xmlns:xlink="http://www.w3.org/1999/xlink;> - + Ukrainian spelling dictionary, hyphenation rules, and thesaurus diff --git a/uk_UA/uk_UA.aff b/uk_UA/uk_UA.aff index 3faea89..2343c2a 100644 --- a/uk_UA/uk_UA.aff +++ b/uk_UA/uk_UA.aff @@ -287,12 +287,12 @@ SFX ( ін ьонах лін SFX ( ір ьорах лір SFX ( іт ьотах літ SFX ) Y 6 +SFX ) сти дучи [аея]сти SFX ) атися учись жатися SFX ) атися учися жатися ### -SFX ) стися дучись ястися -SFX ) стися дучися ястися ### SFX ) ати учи жати -SFX ) сти дучи ясти +SFX ) стися дучись [аея]стися +SFX ) стися дучися [аея]стися ### SFX * Y 3 SFX * ік оці ік SFX * іг озі іг @@ -326,126 +326,126 @@ SFX - ь ей ь SFX - ь ям ь SFX - ь ями ь SFX - ь ях ь -SFX . Y 5 -SFX . е а ще -SFX . е 0 ще -SFX . е ам ще -SFX . е ами ще -SFX . е ах ще -SFX 0 Y 113 -SFX 0 ій ою ій -SFX 0 ій оєві ій -SFX 0 ій оєм ій -SFX 0 ій ої ій -SFX 0 іб обі .іб -SFX 0 ів ові .ів -SFX 0 ід оді .ід -SFX 0 іж ожі .іж -SFX 0 із озі .із -SFX 0 ім омі .ім -SFX 0 ін оні .ін -SFX 0 іп опі .іп -SFX 0 ір орі .ір -SFX 0 іс осі .іс -SFX 0 іт оті .іт -SFX 0 іш оші .іш -SFX 0 ізд озді ізд -SFX 0 ізт озті ізт -SFX 0 ірд орді ірд -SFX 0 ірт орті ірт -SFX 0 ісд осді ісд -SFX 0 іст ості іст -SFX 0 ізд озду ізд -SFX 0 ізк озку ізк -SFX 0 ізт озту ізт -SFX 0 ірд орду ірд -SFX 0 ірк орку ірк -SFX 0 ірт орту ірт -SFX 0 ісд осду ісд -SFX 0 іск оску іск -SFX 0 іст осту іст -SFX 0 ізд оздові ізд -SFX 0 ізк озкові ізк -SFX 0 ізт озтові ізт -SFX 0 ірд ордові ірд -SFX 0 ірк оркові ірк -SFX 0 ірт ортові ірт -SFX 0 ісд осдові ісд -SFX 0 іск оскові іск -SFX 0 іст остові іст -SFX 0 ізд оздом ізд -SFX 0 ізк озком ізк -SFX 0 ізт озтом ізт -SFX 0 ірд ордом ірд -SFX 0 ірк орком ірк -SFX 0 ірт ортом ірт -SFX 0 ісд осдом ісд -SFX 0 іск оском іск -SFX 0 іст остом іст -SFX 0 іб обові іб -SFX 0 ід одові ід -SFX 0 іг огові іг -SFX 0 із озові із -SFX 0 ік окові ік -SFX 0 іл олові іл -SFX 0 ім омові ім -SFX 0 ін онові ін -SFX 0 іп опові іп -SFX 0 ір орові ір -SFX 0 іс осові іс -SFX 0 іт отові іт -SFX 0 ік оці потік -SFX 0 іж ожу іж -SFX 0 іш ошу іш -SFX 0 іж ожем іж -SFX 0 іш ошем іш -SFX 0 іж ожеві іж -SFX 0 іш ошеві іш -SFX 0 інь оню інь -SFX 0 інь оневі інь -SFX 0 інь онем інь -SFX 0 інь оні інь -SFX 0 іль олю іль -SFX 0 іль олеві іль -SFX 0 іль олем іль -SFX 0 іль олі іль -SFX 0 іб обу іб -SFX 0 ів ову ів -SFX 0 ід оду ід -SFX 0 іг огу іг -SFX 0 із озу із -SFX 0 ік оку ік -SFX 0 іл олу іл -SFX 0 ім ому ім -SFX 0 ін ону ін -SFX 0 іп опу іп -SFX 0 ір ору ір -SFX 0 іс осу іс -SFX 0 іт оту іт -SFX 0 іч очу іч -SFX 0 іб обом іб -SFX 0 ів овом ів -SFX 0 ід одом ід -SFX 0 іг огом іг -SFX 0 із озом із -SFX 0 ік оком ік -SFX 0 іл олом іл -SFX 0 ім омом ім -SFX 0 ін оном ін -SFX 0 іп опом іп -SFX 0 ір ором ір -SFX 0 іс осом іс -SFX 0 іт отом іт -SFX 0 іч очом іч -SFX 0 ік оці стік -SFX 0 івш овшу івш -SFX 0 івш овшеві івш -SFX 0 івш овшем івш -SFX 0 івш овші івш -SFX 0 ість остю ість -SFX 0 ість остеві ість -SFX 0 ість остем ість -SFX 0 ість ості ість +SFX . Y 113 +SFX . ій ою ій +SFX . ій оєві ій +SFX . ій оєм ій +SFX . ій ої ій +SFX . іб обі .іб +SFX . ів ові .ів +SFX . ід оді .ід +SFX . іж ожі .іж +SFX . із озі .із +SFX . ім омі .ім +SFX . ін оні .ін +SFX . іп опі .іп +SFX . ір орі .ір +SFX . іс осі .іс +SFX . іт оті .іт +SFX . іш оші .іш +SFX . ізд озді ізд +SFX . ізт озті ізт +SFX . ірд орді ірд +SFX . ірт орті ірт +SFX . ісд осді ісд +SFX . іст ості іст +SFX . ізд озду ізд +SFX . ізк озку ізк +SFX . ізт озту ізт +SFX . ірд орду ірд +SFX . ірк орку ірк +SFX . ірт орту ірт +SFX . ісд осду ісд +SFX . іск оску іск +SFX . іст осту іст +SFX . ізд оздові ізд +SFX . ізк озкові ізк +SFX . ізт озтові ізт +SFX . ірд ордові ірд +SFX . ірк оркові ірк +SFX . ірт ортові ірт +SFX . ісд осдові ісд +SFX . іск оскові іск +SFX . іст остові іст +SFX . ізд оздом ізд +SFX . ізк озком ізк +SFX . ізт озтом ізт +SFX . ірд ордом ірд +SFX . ірк орком ірк +SFX . ірт ортом ірт +SFX . ісд осдом ісд +SFX . іск оском іск +SFX . іст остом іст +SFX . іб обові іб +SFX . ід одові ід +SFX . іг огові іг +SFX
core.git: dictionaries
dictionaries |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 9490972c04b79065f247b3076a7c53c9ec4fad67 Author: Xisco Fauli AuthorDate: Fri May 3 10:44:03 2024 +0200 Commit: Gerrit Code Review CommitDate: Fri May 3 10:44:03 2024 +0200 Update git submodules * Update dictionaries from branch 'master' to 0ca7301c3c00d6e7936fd912ba775d0008f7fee4 - upgrade Ukrainian dictionaries to 6.4.4 Change-Id: Idf246940bdf58844212420975ab52c19b08327ec Reviewed-on: https://gerrit.libreoffice.org/c/dictionaries/+/166872 Tested-by: Xisco Fauli Reviewed-by: Xisco Fauli Reviewed-by: Andriy Rysin diff --git a/dictionaries b/dictionaries index 8c5b63124f5c..0ca7301c3c00 16 --- a/dictionaries +++ b/dictionaries @@ -1 +1 @@ -Subproject commit 8c5b63124f5cedf97ed4799560fdd1202f039511 +Subproject commit 0ca7301c3c00d6e7936fd912ba775d0008f7fee4
core.git: sw/qa
sw/qa/extras/uiwriter/uiwriter4.cxx |1 - 1 file changed, 1 deletion(-) New commits: commit 01f19161e9a8e957028d5378e48929e82fed159c Author: Xisco Fauli AuthorDate: Thu May 2 10:42:18 2024 +0200 Commit: Xisco Fauli CommitDate: Thu May 2 19:10:28 2024 +0200 CppunitTest_sw_uiwriter4: remove unneded Scheduler::ProcessEventsToIdle() Added with 17b2f3d96fb21dcfc2fb8e54ca9670a8c58840f1 "tdf#143320, tdf#143387: sw_uiwriter4: Add unittest" Change-Id: I13dc9a540a37edf9e089df5af14342bc9032ee02 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166999 Reviewed-by: Xisco Fauli Tested-by: Jenkins diff --git a/sw/qa/extras/uiwriter/uiwriter4.cxx b/sw/qa/extras/uiwriter/uiwriter4.cxx index c361ddfb80e0..654bb33ae92c 100644 --- a/sw/qa/extras/uiwriter/uiwriter4.cxx +++ b/sw/qa/extras/uiwriter/uiwriter4.cxx @@ -2597,7 +2597,6 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest4, testTdf143320) CPPUNIT_ASSERT(getParagraph(1)->getString().startsWith("x")); dispatchCommand(mxComponent, ".uno:Undo", {}); -Scheduler::ProcessEventsToIdle(); CPPUNIT_ASSERT_EQUAL(1, getPages()); CPPUNIT_ASSERT_EQUAL(OUString(""), getParagraph(1)->getString());
core.git: 2 commits - sw/qa sw/source
sw/qa/extras/uiwriter/data/tdf143320.odt |binary sw/qa/extras/uiwriter/uiwriter4.cxx | 37 +++ sw/source/core/frmedt/fefly1.cxx |4 +-- 3 files changed, 39 insertions(+), 2 deletions(-) New commits: commit 17b2f3d96fb21dcfc2fb8e54ca9670a8c58840f1 Author: Xisco Fauli AuthorDate: Wed Jul 14 14:41:24 2021 +0200 Commit: Xisco Fauli CommitDate: Tue Apr 30 21:14:00 2024 +0200 tdf#143320, tdf#143387: sw_uiwriter4: Add unittest Change-Id: I45aaa88c8ed70f3eebd30dfcd29edc4e1e4a5694 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/118908 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/sw/qa/extras/uiwriter/data/tdf143320.odt b/sw/qa/extras/uiwriter/data/tdf143320.odt new file mode 100644 index ..b7aef0c34bb0 Binary files /dev/null and b/sw/qa/extras/uiwriter/data/tdf143320.odt differ diff --git a/sw/qa/extras/uiwriter/uiwriter4.cxx b/sw/qa/extras/uiwriter/uiwriter4.cxx index 7757ceb9701e..c361ddfb80e0 100644 --- a/sw/qa/extras/uiwriter/uiwriter4.cxx +++ b/sw/qa/extras/uiwriter/uiwriter4.cxx @@ -2572,6 +2572,43 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest4, testTdf142157) CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xSections->getCount()); } +CPPUNIT_TEST_FIXTURE(SwUiWriterTest4, testTdf143320) +{ +createSwDoc("tdf143320.odt"); +SwDoc* pDoc = getSwDoc(); +SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell(); + +CPPUNIT_ASSERT_EQUAL(1, getPages()); +CPPUNIT_ASSERT(getParagraph(1)->getString().startsWith("x")); + +dispatchCommand(mxComponent, ".uno:SelectAll", {}); + +dispatchCommand(mxComponent, ".uno:Copy", {}); + +// Create a new document +createSwDoc(); +pDoc = getSwDoc(); +pWrtShell = pDoc->GetDocShell()->GetWrtShell(); +CPPUNIT_ASSERT(pWrtShell); + +dispatchCommand(mxComponent, ".uno:Paste", {}); + +CPPUNIT_ASSERT_EQUAL(1, getPages()); +CPPUNIT_ASSERT(getParagraph(1)->getString().startsWith("x")); + +dispatchCommand(mxComponent, ".uno:Undo", {}); +Scheduler::ProcessEventsToIdle(); + +CPPUNIT_ASSERT_EQUAL(1, getPages()); +CPPUNIT_ASSERT_EQUAL(OUString(""), getParagraph(1)->getString()); + +// Without the fix in place, this test would have crashed here +dispatchCommand(mxComponent, ".uno:Paste", {}); + +CPPUNIT_ASSERT_EQUAL(1, getPages()); +CPPUNIT_ASSERT(getParagraph(1)->getString().startsWith("x")); +} + CPPUNIT_PLUGIN_IMPLEMENT(); /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ commit acad40220d21e73b5fb699404ae1a2dc29218faa Author: Xisco Fauli AuthorDate: Tue Apr 30 10:07:23 2024 +0200 Commit: Xisco Fauli CommitDate: Tue Apr 30 21:13:52 2024 +0200 Fix UBSan failure (part 2) Introduced by 495b5db74f0db59395ff68bacc8d8ca67595b66e "sw: check GetUserCall" https: //gerrit.libreoffice.org/c/core/+/166824/comments/8db24a41_2f4e7e4e Change-Id: Ib6f981aa3055f0d37d0b83e3284842d310fe6ef0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166913 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/sw/source/core/frmedt/fefly1.cxx b/sw/source/core/frmedt/fefly1.cxx index 280166ed888b..eca71843557b 100644 --- a/sw/source/core/frmedt/fefly1.cxx +++ b/sw/source/core/frmedt/fefly1.cxx @@ -386,7 +386,7 @@ const SwFrameFormat* SwFEShell::IsFlyInFly() return nullptr; SdrObject *pObj = rMrkList.GetMark( 0 )->GetMarkedSdrObj(); -SwDrawContact *pContact = static_cast(GetUserCall(pObj)); +SwContact* pContact = GetUserCall( pObj ); if (!pContact) return nullptr; @@ -400,7 +400,7 @@ const SwFrameFormat* SwFEShell::IsFlyInFly() } else { -pFly = pContact->GetAnchorFrame(pObj); +pFly = static_cast(pContact)->GetAnchorFrame(pObj); } OSL_ENSURE( pFly, "IsFlyInFly: Where's my anchor?" );
core.git: sw/qa
sw/qa/extras/ooxmlexport/data/tdf160827.docx |binary sw/qa/extras/ooxmlexport/ooxmlexport20.cxx |8 2 files changed, 8 insertions(+) New commits: commit bb55430412a9a0e211482ee853f78ea35989e92a Author: Xisco Fauli AuthorDate: Mon Apr 29 17:21:52 2024 +0200 Commit: Xisco Fauli CommitDate: Tue Apr 30 09:37:01 2024 +0200 tdf#160827: sw_ooxmlexport20: Add unittest Change-Id: I6fb58ef5e2336a1dcf9c8bc805a494fd4dd8e4bb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166871 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/sw/qa/extras/ooxmlexport/data/tdf160827.docx b/sw/qa/extras/ooxmlexport/data/tdf160827.docx new file mode 100644 index ..5f2b76a3d429 Binary files /dev/null and b/sw/qa/extras/ooxmlexport/data/tdf160827.docx differ diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport20.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport20.cxx index 94f8872f263a..7418c2665bac 100644 --- a/sw/qa/extras/ooxmlexport/ooxmlexport20.cxx +++ b/sw/qa/extras/ooxmlexport/ooxmlexport20.cxx @@ -1123,6 +1123,14 @@ CPPUNIT_TEST_FIXTURE(Test, testTdf158451) getProperty(getShape(1), "AnchorType")); } +DECLARE_OOXMLEXPORT_TEST(testTdf160827, "tdf160827.docx") +{ +// it crashes at import time +SwXTextDocument* pTextDoc = dynamic_cast(mxComponent.get()); +CPPUNIT_ASSERT(pTextDoc); +CPPUNIT_ASSERT(pTextDoc->GetDocShell()->IsSecurityOptOpenReadOnly()); +} + CPPUNIT_TEST_FIXTURE(Test, testTdf159110) { // Given a text with an URL with multiple spaces
core.git: sw/source
sw/source/core/draw/dview.cxx | 31 +-- 1 file changed, 17 insertions(+), 14 deletions(-) New commits: commit 0627386e924279e1de75210cf6b144303fccbe7f Author: Xisco Fauli AuthorDate: Mon Apr 29 09:54:12 2024 +0200 Commit: Xisco Fauli CommitDate: Mon Apr 29 15:42:25 2024 +0200 Fix UBSan failure Introduced by 495b5db74f0db59395ff68bacc8d8ca67595b66e "sw: check GetUserCall" https://ci.libreoffice.org/job/lo_ubsan/3154/consoleFull#-1571115798d893063f-7f3d-4b7e-b56f-4e0f225817cd Change-Id: Ifc80312890f2e6b82dcc9419b5b7e8bfcd5340a5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166824 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/sw/source/core/draw/dview.cxx b/sw/source/core/draw/dview.cxx index d95dc0d17af9..de84660ca94a 100644 --- a/sw/source/core/draw/dview.cxx +++ b/sw/source/core/draw/dview.cxx @@ -708,13 +708,10 @@ const SwFrame* SwDrawView::CalcAnchor() return nullptr; SdrObject* pObj = rMrkList.GetMark( 0 )->GetMarkedSdrObj(); -SwDrawContact* pContact = static_cast(GetUserCall(pObj)); -if (!pContact) -return nullptr; //Search for paragraph bound objects, otherwise only the //current anchor. Search only if we currently drag. -const SwFrame* pAnch; +const SwFrame* pAnch = nullptr; tools::Rectangle aMyRect; auto pFlyDrawObj = dynamic_cast( pObj ); if ( pFlyDrawObj ) @@ -726,13 +723,16 @@ const SwFrame* SwDrawView::CalcAnchor() { // determine correct anchor position for 'virtual' drawing objects. // #i26791# -pAnch = pContact->GetAnchorFrame( pObj ); -if( !pAnch ) +if (SwDrawContact* pContact = static_cast(GetUserCall(pObj))) { -pContact->ConnectToLayout(); -// determine correct anchor position for 'virtual' drawing objects. -// #i26791# pAnch = pContact->GetAnchorFrame( pObj ); +if( !pAnch ) +{ +pContact->ConnectToLayout(); +// determine correct anchor position for 'virtual' drawing objects. +// #i26791# +pAnch = pContact->GetAnchorFrame( pObj ); +} } aMyRect = pObj->GetSnapRect(); } @@ -767,11 +767,14 @@ const SwFrame* SwDrawView::CalcAnchor() { const SwRect aRect( aPt.getX(), aPt.getY(), 1, 1 ); -if ( pContact->GetAnchorFrame( pObj ) && - pContact->GetAnchorFrame( pObj )->IsPageFrame() ) -pAnch = pContact->GetPageFrame(); -else -pAnch = pContact->FindPage( aRect ); +if (SwDrawContact* pContact = static_cast(GetUserCall(pObj))) +{ +if ( pContact->GetAnchorFrame( pObj ) && + pContact->GetAnchorFrame( pObj )->IsPageFrame() ) +pAnch = pContact->GetPageFrame(); +else +pAnch = pContact->FindPage( aRect ); +} } } if( pAnch && !pAnch->IsProtected() )
core.git: download.lst external/libgpg-error
download.lst |4 ++-- external/libgpg-error/ExternalPackage_libgpg-error.mk |2 +- 2 files changed, 3 insertions(+), 3 deletions(-) New commits: commit a5d75f487592d17c02fccbf21a0edef437067f30 Author: Xisco Fauli AuthorDate: Fri Apr 26 09:50:09 2024 +0200 Commit: Xisco Fauli CommitDate: Fri Apr 26 12:47:24 2024 +0200 libgpg-error: Upgrade to 1.49 Change-Id: I1bd83294e58952ebdbaaf0362bd8675c1911b9be Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166697 Tested-by: Jenkins Reviewed-by: Taichi Haradaguchi <20001...@ymail.ne.jp> diff --git a/download.lst b/download.lst index df1a213bbb95..28538879f5ec 100644 --- a/download.lst +++ b/download.lst @@ -394,8 +394,8 @@ LIBFFI_TARBALL := libffi-3.4.4.tar.gz # three static lines # so that git cherry-pick # will not run into conflicts -LIBGPGERROR_SHA256SUM := 89ce1ae893e122924b858de84dc4f67aae29ffa610ebf668d5aa539045663d6f -LIBGPGERROR_TARBALL := libgpg-error-1.48.tar.bz2 +LIBGPGERROR_SHA256SUM := 8b79d54639dbf4abc08b5406fb2f37e669a2dec091dd024fb87dd367131c63a9 +LIBGPGERROR_TARBALL := libgpg-error-1.49.tar.bz2 # three static lines # so that git cherry-pick # will not run into conflicts diff --git a/external/libgpg-error/ExternalPackage_libgpg-error.mk b/external/libgpg-error/ExternalPackage_libgpg-error.mk index 2c64ba3b5cc6..262675acf6e6 100644 --- a/external/libgpg-error/ExternalPackage_libgpg-error.mk +++ b/external/libgpg-error/ExternalPackage_libgpg-error.mk @@ -15,7 +15,7 @@ ifneq ($(DISABLE_DYNLOADING),TRUE) ifeq ($(OS),LINUX) -$(eval $(call gb_ExternalPackage_add_file,libgpg-error,$(LIBO_LIB_FOLDER)/libgpg-error-lo.so.0,src/.libs/libgpg-error-lo.so.0.35.0)) +$(eval $(call gb_ExternalPackage_add_file,libgpg-error,$(LIBO_LIB_FOLDER)/libgpg-error-lo.so.0,src/.libs/libgpg-error-lo.so.0.36.0)) else ifeq ($(OS),MACOSX)
core.git: sw/source
sw/source/core/access/accfrmobj.cxx | 15 ++- sw/source/core/doc/docdraw.cxx | 12 +++ sw/source/core/draw/dview.cxx| 108 --- sw/source/core/frmedt/fecopy.cxx | 25 +++--- sw/source/core/frmedt/fefly1.cxx | 13 ++- sw/source/core/frmedt/feshview.cxx | 37 ++--- sw/source/core/layout/anchoreddrawobject.cxx |4 + sw/source/core/layout/anchoredobject.cxx | 11 +- sw/source/core/layout/fly.cxx|4 - sw/source/core/layout/flylay.cxx | 41 +- sw/source/core/layout/frmtool.cxx| 40 ++ sw/source/core/layout/pagechg.cxx| 19 ++-- sw/source/core/layout/trvlfrm.cxx| 39 + sw/source/core/txtnode/atrflyin.cxx |3 sw/source/core/undo/undraw.cxx | 31 --- 15 files changed, 242 insertions(+), 160 deletions(-) New commits: commit 495b5db74f0db59395ff68bacc8d8ca67595b66e Author: Xisco Fauli AuthorDate: Thu Apr 25 18:15:12 2024 +0200 Commit: Xisco Fauli CommitDate: Fri Apr 26 09:25:23 2024 +0200 sw: check GetUserCall It might return nullptr See https://crashreport.libreoffice.org/stats/signature/SwFEShell::ShouldObjectBeSelected(Point%20const%20&) Change-Id: Ia0ed355a7eb9084b9f57163ffbfe6b549c8bdb3f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166642 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/sw/source/core/access/accfrmobj.cxx b/sw/source/core/access/accfrmobj.cxx index f78dc2d155db..004ca4ab94e0 100644 --- a/sw/source/core/access/accfrmobj.cxx +++ b/sw/source/core/access/accfrmobj.cxx @@ -240,13 +240,16 @@ SwRect SwAccessibleChild::GetBox( const SwAccessibleMap& rAccMap ) const // by the mpFrame case above b) for genuine SdrObject this must be set // if it's connected to layout assert(dynamic_cast(pContact)); -SwPageFrame const*const pPage(const_cast( -pContact->GetAnchoredObj(mpDrawObj))->FindPageFrameOfAnchor()); -if (pPage) // may end up here with partial layout -> not visible +if (pContact) { -aBox = SwRect( mpDrawObj->GetCurrentBoundRect() ); -// tdf#91260 drawing object may be partially off-page -aBox.Intersection(pPage->getFrameArea()); +SwPageFrame const*const pPage(const_cast( +pContact->GetAnchoredObj(mpDrawObj))->FindPageFrameOfAnchor()); +if (pPage) // may end up here with partial layout -> not visible +{ +aBox = SwRect( mpDrawObj->GetCurrentBoundRect() ); +// tdf#91260 drawing object may be partially off-page +aBox.Intersection(pPage->getFrameArea()); +} } } else if ( mpWindow ) diff --git a/sw/source/core/doc/docdraw.cxx b/sw/source/core/doc/docdraw.cxx index f5a37d00ab21..1a3bed4e4c0c 100644 --- a/sw/source/core/doc/docdraw.cxx +++ b/sw/source/core/doc/docdraw.cxx @@ -67,6 +67,9 @@ static void lcl_AdjustPositioningAttr( SwDrawFrameFormat* _pFrameFormat, const SwContact* pContact = GetUserCall( &_rSdrObj ); OSL_ENSURE( pContact, " - missing contact object." ); +if (!pContact) +return; + // determine position of new group object relative to its anchor frame position SwTwips nHoriRelPos = 0; SwTwips nVertRelPos = 0; @@ -194,6 +197,9 @@ SwDrawContact* SwDoc::GroupSelection( SdrView& rDrawView ) // Revoke anchor attribute. SwDrawContact *pMyContact = static_cast(GetUserCall(pObj)); +if (!pMyContact) +return pNewContact; + const SwFormatAnchor aAnch( pMyContact->GetFormat()->GetAnchor() ); std::unique_ptr pUndo; @@ -215,6 +221,9 @@ SwDrawContact* SwDoc::GroupSelection( SdrView& rDrawView ) pObj = rMrkList.GetMark( i )->GetMarkedSdrObj(); SwDrawContact *pContact = static_cast(GetUserCall(pObj)); +if (!pContact) +continue; + // #i53320# #if OSL_DEBUG_LEVEL > 0 SwAnchoredDrawObject* pAnchoredDrawObj = @@ -351,6 +360,9 @@ void SwDoc::UnGroupSelection( SdrView& rDrawView ) { SwDrawContact *pContact = static_cast(GetUserCall(pObj)); +if (!pContact) +continue; + std::shared_ptr pTextBoxNode; if (auto pGroupFormat = pContact->GetFormat()) pTextBoxNode = pGroupFormat->GetOtherTextBoxFormats(); diff --git a/sw/source/core/draw/dview.cxx b/sw/source/core/draw/dview.cxx index 21e557b886e4..d95dc0d17af9 100644 --- a/sw/source/core/draw/dview.cxx +++ b/sw/source/core/draw/dview.cxx @@ -212,10 +212,14 @@ void SwDrawView::AddCustomHdl() {
core.git: Branch 'libreoffice-24-2' - download.lst
download.lst |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) New commits: commit 2dd760424554d597eb93fb6bc96ffddc9c5f1b18 Author: Xisco Fauli AuthorDate: Wed Apr 24 18:26:20 2024 +0200 Commit: Adolfo Jayme Barrientos CommitDate: Fri Apr 26 09:13:13 2024 +0200 NotoSansHebrew: upgrade to v2.004 Change-Id: I5f58bc02b35c5995ba8af3f24f448f45dbb378bc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166522 Reviewed-by: Adolfo Jayme Barrientos Tested-by: Jenkins diff --git a/download.lst b/download.lst index a84796bd26e0..40384de2b66d 100644 --- a/download.lst +++ b/download.lst @@ -192,8 +192,8 @@ FONT_NOTO_NASKH_ARABIC_TARBALL := NotoNaskhArabic-v2.016.zip # three static lines # so that git cherry-pick # will not run into conflicts -FONT_NOTO_SANS_HEBREW_SHA256SUM := ded809309ff924bc45834bf19afaa5693cadf17580972468f6041f5e599ddb8a -FONT_NOTO_SANS_HEBREW_TARBALL := NotoSansHebrew-v2.003.zip +FONT_NOTO_SANS_HEBREW_SHA256SUM := 54b5b06b466f4de8ec8e8f988877e297ead271419f6646527046638e434815fe +FONT_NOTO_SANS_HEBREW_TARBALL := NotoSansHebrew-v2.004.zip # three static lines # so that git cherry-pick # will not run into conflicts
core.git: svx/source
svx/source/dialog/svxruler.cxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 90548039f09d4bc773bf6879a62d544adfa175db Author: Xisco Fauli AuthorDate: Thu Apr 25 15:52:29 2024 +0200 Commit: Caolán McNamara CommitDate: Thu Apr 25 20:47:41 2024 +0200 svx: Avoid divide by 0 See https://crashreport.libreoffice.org/stats/signature/SvxRuler::UpdateTabs() Change-Id: Ie08c54d1a1b40bcc42da9f81c893f496fff433a8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166626 Tested-by: Jenkins Tested-by: Caolán McNamara Reviewed-by: Caolán McNamara diff --git a/svx/source/dialog/svxruler.cxx b/svx/source/dialog/svxruler.cxx index 6323583fd271..17c4edaa930d 100644 --- a/svx/source/dialog/svxruler.cxx +++ b/svx/source/dialog/svxruler.cxx @@ -1033,7 +1033,7 @@ void SvxRuler::UpdateTabs() lCurrentDefTabDist = mxTabStopItem->GetDefaultDistance(); tools::Long nDefTabDist = ConvertHPosPixel(lCurrentDefTabDist); -const sal_uInt16 nDefTabBuf = lPosPixel > lRightIndent || lLastTab > lRightIndent +const sal_uInt16 nDefTabBuf = lPosPixel > lRightIndent || lLastTab > lRightIndent || nDefTabDist == 0 ? 0 : static_cast( (lRightIndent - lPosPixel) / nDefTabDist );
core.git: 2 commits - download.lst svgio/qa
download.lst |4 ++-- svgio/qa/cppunit/SvgImportTest.cxx | 18 +++--- 2 files changed, 9 insertions(+), 13 deletions(-) New commits: commit 0669ab8167fdbe759061d5f8a230560392b53811 Author: Xisco Fauli AuthorDate: Wed Apr 24 18:26:20 2024 +0200 Commit: Xisco Fauli CommitDate: Thu Apr 25 09:21:09 2024 +0200 NotoSansHebrew: upgrade to v2.004 Change-Id: I5f58bc02b35c5995ba8af3f24f448f45dbb378bc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166603 Reviewed-by: Xisco Fauli Tested-by: Jenkins diff --git a/download.lst b/download.lst index cf984726c09e..9989521f9094 100644 --- a/download.lst +++ b/download.lst @@ -192,8 +192,8 @@ FONT_NOTO_NASKH_ARABIC_TARBALL := NotoNaskhArabic-v2.018.zip # three static lines # so that git cherry-pick # will not run into conflicts -FONT_NOTO_SANS_HEBREW_SHA256SUM := ded809309ff924bc45834bf19afaa5693cadf17580972468f6041f5e599ddb8a -FONT_NOTO_SANS_HEBREW_TARBALL := NotoSansHebrew-v2.003.zip +FONT_NOTO_SANS_HEBREW_SHA256SUM := 54b5b06b466f4de8ec8e8f988877e297ead271419f6646527046638e434815fe +FONT_NOTO_SANS_HEBREW_TARBALL := NotoSansHebrew-v2.004.zip # three static lines # so that git cherry-pick # will not run into conflicts commit 99757f5e3a0a56370e035c14f38f5ccde3902e2c Author: Xisco Fauli AuthorDate: Wed Apr 24 17:50:23 2024 +0200 Commit: Xisco Fauli CommitDate: Thu Apr 25 09:21:03 2024 +0200 CppunitTest_svgio: fix mid-air collision it was caused by 98935eef13c7d755221d79fe7d3c5869a40a7c37 "tdf#159661, tdf#160773: svgio: Add unittest" and 7f64148507a360825e9c28ddb7077996df9fa092 "Fix a thinko in 8a97f1ba8d9ccb65b2c89106de20666311d90c30" This partially reverts d984836834e67b5bcd618ebd5d1633138985a881 "Fix unit test after commit 98935eef13c7d755221d79fe7d3c5869a40a7c37" Kudos to Mike for keeping Jenkins happy Change-Id: I034759b2cd95cbaaeb84ec1b528bf5b61487a1e0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166591 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/svgio/qa/cppunit/SvgImportTest.cxx b/svgio/qa/cppunit/SvgImportTest.cxx index 080580fd8589..01463a894dd5 100644 --- a/svgio/qa/cppunit/SvgImportTest.cxx +++ b/svgio/qa/cppunit/SvgImportTest.cxx @@ -1585,20 +1585,16 @@ CPPUNIT_TEST_FIXTURE(Test, testTdf160773) { xmlDocUniquePtr pDocument = dumpAndParseSvg(u"/svgio/qa/cppunit/data/tdf160773.svg"); -const bool hasMask = countXPathNodes(pDocument, "/primitive2D/transform/mask"_ostr) > 0; -const OString aXPath = hasMask ? "/primitive2D/transform/mask/transform"_ostr - : "/primitive2D/transform/transform"_ostr; - // tdf#160773 Check there is a rectangle -assertXPath(pDocument, aXPath + "/polypolygoncolor", "color"_ostr, "#ff"); +assertXPath(pDocument, "/primitive2D/transform/mask/transform/polypolygoncolor"_ostr, "color"_ostr, "#ff"); // tdf#159661 Check there is text in the right position -assertXPath(pDocument, aXPath + "/textsimpleportion"_ostr, 1); -assertXPath(pDocument, aXPath + "/textsimpleportion"_ostr, "x"_ostr, "0"); -assertXPath(pDocument, aXPath + "/textsimpleportion"_ostr, "y"_ostr, "1"); -assertXPath(pDocument, aXPath + "/textsimpleportion"_ostr, "height"_ostr, "0"); -assertXPath(pDocument, aXPath + "/textsimpleportion"_ostr, "width"_ostr, "0"); -assertXPath(pDocument, aXPath + "/textsimpleportion"_ostr, "text"_ostr, "Red"); +assertXPath(pDocument, "/primitive2D/transform/mask/transform/textsimpleportion"_ostr, 1); +assertXPath(pDocument, "/primitive2D/transform/mask/transform/textsimpleportion"_ostr, "x"_ostr, "0"); +assertXPath(pDocument, "/primitive2D/transform/mask/transform/textsimpleportion"_ostr, "y"_ostr, "1"); +assertXPath(pDocument, "/primitive2D/transform/mask/transform/textsimpleportion"_ostr, "height"_ostr, "0"); +assertXPath(pDocument, "/primitive2D/transform/mask/transform/textsimpleportion"_ostr, "width"_ostr, "0"); +assertXPath(pDocument, "/primitive2D/transform/mask/transform/textsimpleportion"_ostr, "text"_ostr, "Red"); } CPPUNIT_TEST_FIXTURE(Test, testTdf156271)
core.git: Branch 'libreoffice-24-2' - download.lst
download.lst |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) New commits: commit 644450951361025398cc8a4aeaab670eb33b0131 Author: Xisco Fauli AuthorDate: Wed Apr 24 17:43:27 2024 +0200 Commit: Adolfo Jayme Barrientos CommitDate: Thu Apr 25 08:59:42 2024 +0200 NotoSerifHebrew: upgrade to v2.004 Change-Id: I857889598ad68902635e2dd349118c503a4fa70f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166590 Tested-by: Jenkins Reviewed-by: Xisco Fauli (cherry picked from commit e835642a93b6e63f168333dea1b4bc8c26275218) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166521 Reviewed-by: Adolfo Jayme Barrientos diff --git a/download.lst b/download.lst index 0f16c450c5cd..a84796bd26e0 100644 --- a/download.lst +++ b/download.lst @@ -177,8 +177,8 @@ FONT_NOTO_SERIF_TARBALL := NotoSerif-v2.012.zip # three static lines # so that git cherry-pick # will not run into conflicts -FONT_NOTO_SERIF_HEBREW_SHA256SUM := e45c149d6c29b38b8981401f875ab4304e73a366312783c41c082eb5366d3921 -FONT_NOTO_SERIF_HEBREW_TARBALL := NotoSerifHebrew-v2.003.zip +FONT_NOTO_SERIF_HEBREW_SHA256SUM := 99523f4f21051495f18cbd5169ed0d1e9b395eefe770fece1844a4a7a00c46da +FONT_NOTO_SERIF_HEBREW_TARBALL := NotoSerifHebrew-v2.004.zip # three static lines # so that git cherry-pick # will not run into conflicts
core.git: download.lst
download.lst |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) New commits: commit e835642a93b6e63f168333dea1b4bc8c26275218 Author: Xisco Fauli AuthorDate: Wed Apr 24 17:43:27 2024 +0200 Commit: Xisco Fauli CommitDate: Wed Apr 24 19:07:28 2024 +0200 NotoSerifHebrew: upgrade to v2.004 Change-Id: I857889598ad68902635e2dd349118c503a4fa70f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166590 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/download.lst b/download.lst index f3086c5cc3cb..cf984726c09e 100644 --- a/download.lst +++ b/download.lst @@ -177,8 +177,8 @@ FONT_NOTO_SERIF_TARBALL := NotoSerif-v2.013.zip # three static lines # so that git cherry-pick # will not run into conflicts -FONT_NOTO_SERIF_HEBREW_SHA256SUM := e45c149d6c29b38b8981401f875ab4304e73a366312783c41c082eb5366d3921 -FONT_NOTO_SERIF_HEBREW_TARBALL := NotoSerifHebrew-v2.003.zip +FONT_NOTO_SERIF_HEBREW_SHA256SUM := 99523f4f21051495f18cbd5169ed0d1e9b395eefe770fece1844a4a7a00c46da +FONT_NOTO_SERIF_HEBREW_TARBALL := NotoSerifHebrew-v2.004.zip # three static lines # so that git cherry-pick # will not run into conflicts
core.git: include/vcl vcl/source
include/vcl/BitmapTools.hxx |3 vcl/source/bitmap/BitmapArithmeticBlendFilter.cxx | 71 ++--- vcl/source/bitmap/BitmapDarkenBlendFilter.cxx | 73 ++ vcl/source/bitmap/BitmapLightenBlendFilter.cxx| 73 ++ vcl/source/bitmap/BitmapMultiplyBlendFilter.cxx | 73 ++ vcl/source/bitmap/BitmapNormalBlendFilter.cxx | 69 ++-- vcl/source/bitmap/BitmapScreenBlendFilter.cxx | 69 ++-- vcl/source/bitmap/BitmapTools.cxx | 14 8 files changed, 138 insertions(+), 307 deletions(-) New commits: commit 9c079eec689c9df295d8eb1770e90cca2060b98b Author: Xisco Fauli AuthorDate: Wed Apr 24 13:23:11 2024 +0200 Commit: Xisco Fauli CommitDate: Wed Apr 24 15:28:45 2024 +0200 vcl: Factor out common code and simplify Change-Id: I836c8f85474dc564efa3ca781f47a25e1d8c55fb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166582 Reviewed-by: Xisco Fauli Tested-by: Jenkins diff --git a/include/vcl/BitmapTools.hxx b/include/vcl/BitmapTools.hxx index d321d2be79a3..4582f7305ee9 100644 --- a/include/vcl/BitmapTools.hxx +++ b/include/vcl/BitmapTools.hxx @@ -97,6 +97,9 @@ VCL_DLLPUBLIC bool convertBitmap32To24Plus8(BitmapEx const & rInput, BitmapEx & VCL_DLLPUBLIC Bitmap GetDownsampledBitmap(Size const& rDstSizeTwip, Point const& rSrcPt, Size const& rSrcSz, Bitmap const& rBmp, tools::Long nMaxBmpDPIX, tools::Long nMaxBmpDPIY); +BitmapColor premultiply(const BitmapColor c); +BitmapColor unpremultiply(const BitmapColor c); + } // end vcl::bitmap #endif // INCLUDED_VCL_BITMAP_TOOLS_HXX diff --git a/vcl/source/bitmap/BitmapArithmeticBlendFilter.cxx b/vcl/source/bitmap/BitmapArithmeticBlendFilter.cxx index da52a436b6f6..d46b7bc9bd74 100644 --- a/vcl/source/bitmap/BitmapArithmeticBlendFilter.cxx +++ b/vcl/source/bitmap/BitmapArithmeticBlendFilter.cxx @@ -32,20 +32,6 @@ static sal_uInt8 lcl_calculate(sal_uInt8 aColor, sal_uInt8 aColor2, double aK1, return std::clamp(result, 0.0, 1.0) * 255.0; } -static BitmapColor premultiply(const BitmapColor c) -{ -return BitmapColor(ColorAlpha, vcl::bitmap::premultiply(c.GetRed(), c.GetAlpha()), - vcl::bitmap::premultiply(c.GetGreen(), c.GetAlpha()), - vcl::bitmap::premultiply(c.GetBlue(), c.GetAlpha()), c.GetAlpha()); -} - -static BitmapColor unpremultiply(const BitmapColor c) -{ -return BitmapColor(ColorAlpha, vcl::bitmap::unpremultiply(c.GetRed(), c.GetAlpha()), - vcl::bitmap::unpremultiply(c.GetGreen(), c.GetAlpha()), - vcl::bitmap::unpremultiply(c.GetBlue(), c.GetAlpha()), c.GetAlpha()); -} - BitmapEx BitmapArithmeticBlendFilter::execute(double aK1, double aK2, double aK3, double aK4) { if (maBitmapEx.IsEmpty() || maBitmapEx2.IsEmpty()) @@ -56,49 +42,34 @@ BitmapEx BitmapArithmeticBlendFilter::execute(double aK1, double aK2, double aK3 sal_Int32 nHeight = std::min(aSize.getHeight(), aSize2.getHeight()); sal_Int32 nWidth = std::min(aSize.getWidth(), aSize2.getWidth()); -BitmapScopedReadAccess pReadAccess(maBitmapEx.GetBitmap()); -Bitmap aDstBitmap(Size(nWidth, nHeight), maBitmapEx.GetBitmap().getPixelFormat(), - >GetPalette()); +Bitmap aDstBitmap(Size(nWidth, nHeight), vcl::PixelFormat::N24_BPP); Bitmap aDstAlpha(AlphaMask(Size(nWidth, nHeight)).GetBitmap()); -{ -// just to be on the safe side: let the -// ScopedAccessors get destructed before -// copy-constructing the resulting bitmap. This will -// rule out the possibility that cached accessor data -// is not yet written back. +BitmapScopedWriteAccess pWriteAccess(aDstBitmap); +BitmapScopedWriteAccess pAlphaWriteAccess(aDstAlpha); -BitmapScopedWriteAccess pWriteAccess(aDstBitmap); -BitmapScopedWriteAccess pAlphaWriteAccess(aDstAlpha); - -if (pWriteAccess.get() != nullptr && pAlphaWriteAccess.get() != nullptr) -{ -for (tools::Long y(0); y < nHeight; ++y) -{ -Scanline pScanline = pWriteAccess->GetScanline(y); -Scanline pScanAlpha = pAlphaWriteAccess->GetScanline(y); -for (tools::Long x(0); x < nWidth; ++x) -{ -BitmapColor i1 = premultiply(maBitmapEx.GetPixelColor(x, y)); -BitmapColor i2 = premultiply(maBitmapEx2.GetPixelColor(x, y)); -sal_uInt8 r(lcl_calculate(i1.GetRed(), i2.GetRed(), aK1, aK2, aK3, aK4)); -sal_uInt8 g(lcl_calculate(i1.GetGreen(), i2.GetGreen(), aK1, aK2, aK3, aK4)); -sal_uInt8 b(lcl_calculate(i1.GetBlue(), i2.GetBlue(), aK1, aK2, aK3, aK4)); -sal_uInt8 a(lcl_calculate(i1
core.git: svgio/qa
svgio/qa/cppunit/SvgImportTest.cxx | 16 svgio/qa/cppunit/data/tdf160773.svg |5 + 2 files changed, 21 insertions(+) New commits: commit 98935eef13c7d755221d79fe7d3c5869a40a7c37 Author: Xisco Fauli AuthorDate: Tue Apr 23 11:54:47 2024 +0200 Commit: Xisco Fauli CommitDate: Tue Apr 23 14:05:04 2024 +0200 tdf#159661, tdf#160773: svgio: Add unittest Change-Id: I2d0b96f13e02ac81b97ea347889c76770c22a989 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166509 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/svgio/qa/cppunit/SvgImportTest.cxx b/svgio/qa/cppunit/SvgImportTest.cxx index 817980d00421..ee9a61deebc3 100644 --- a/svgio/qa/cppunit/SvgImportTest.cxx +++ b/svgio/qa/cppunit/SvgImportTest.cxx @@ -1581,6 +1581,22 @@ CPPUNIT_TEST_FIXTURE(Test, testTdf156837) assertXPath(pDocument, "/primitive2D/transform/textsimpleportion[2]"_ostr, "text"_ostr, "3"); } +CPPUNIT_TEST_FIXTURE(Test, testTdf160773) +{ +xmlDocUniquePtr pDocument = dumpAndParseSvg(u"/svgio/qa/cppunit/data/tdf160773.svg"); + +// tdf#160773 Check there is a rectangle +assertXPath(pDocument, "/primitive2D/transform/transform/polypolygoncolor"_ostr, "color"_ostr, "#ff"); + +// tdf#159661 Check there is text in the right position +assertXPath(pDocument, "/primitive2D/transform/transform/textsimpleportion"_ostr, 1); +assertXPath(pDocument, "/primitive2D/transform/transform/textsimpleportion"_ostr, "x"_ostr, "0"); +assertXPath(pDocument, "/primitive2D/transform/transform/textsimpleportion"_ostr, "y"_ostr, "1"); +assertXPath(pDocument, "/primitive2D/transform/transform/textsimpleportion"_ostr, "height"_ostr, "0"); +assertXPath(pDocument, "/primitive2D/transform/transform/textsimpleportion"_ostr, "width"_ostr, "0"); +assertXPath(pDocument, "/primitive2D/transform/transform/textsimpleportion"_ostr, "text"_ostr, "Red"); +} + CPPUNIT_TEST_FIXTURE(Test, testTdf156271) { xmlDocUniquePtr pDocument = dumpAndParseSvg(u"/svgio/qa/cppunit/data/tdf156271.svg"); diff --git a/svgio/qa/cppunit/data/tdf160773.svg b/svgio/qa/cppunit/data/tdf160773.svg new file mode 100644 index ..812c0824862c --- /dev/null +++ b/svgio/qa/cppunit/data/tdf160773.svg @@ -0,0 +1,5 @@ + +http://www.w3.org/2000/svg;> + Red + +
core.git: include/vcl svgio/qa svgio/source vcl/Library_vcl.mk vcl/qa vcl/source
include/vcl/BitmapNormalBlendFilter.hxx | 29 ++ svgio/qa/cppunit/SvgImportTest.cxx| 60 svgio/source/svgreader/svgfeblendnode.cxx | 124 -- vcl/Library_vcl.mk|1 vcl/qa/cppunit/BitmapFilterTest.cxx | 57 +++ vcl/source/bitmap/BitmapNormalBlendFilter.cxx | 104 + 6 files changed, 294 insertions(+), 81 deletions(-) New commits: commit 851f60697d32849454528e5f14ed80446b330e0c Author: Xisco Fauli AuthorDate: Mon Apr 22 16:38:35 2024 +0200 Commit: Xisco Fauli CommitDate: Mon Apr 22 18:43:08 2024 +0200 tdf#159660: also add normal blend filter Change-Id: I3edc7495975618357f002536857a11dcc72cc0b9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166460 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/include/vcl/BitmapNormalBlendFilter.hxx b/include/vcl/BitmapNormalBlendFilter.hxx new file mode 100644 index ..f89ea848d5cc --- /dev/null +++ b/include/vcl/BitmapNormalBlendFilter.hxx @@ -0,0 +1,29 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + */ + +#ifndef INCLUDED_VCL_BITMAPNORMALBLENDFILTER_HXX +#define INCLUDED_VCL_BITMAPNORMALBLENDFILTER_HXX + +#include + +class VCL_DLLPUBLIC BitmapNormalBlendFilter +{ +private: +BitmapEx maBitmapEx; +BitmapEx maBitmapEx2; + +public: +BitmapNormalBlendFilter(BitmapEx const& rBmpEx, BitmapEx const& rBmpEx2); + +virtual ~BitmapNormalBlendFilter(); +BitmapEx execute(); +}; +#endif +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/svgio/qa/cppunit/SvgImportTest.cxx b/svgio/qa/cppunit/SvgImportTest.cxx index 31eb63c6075b..817980d00421 100644 --- a/svgio/qa/cppunit/SvgImportTest.cxx +++ b/svgio/qa/cppunit/SvgImportTest.cxx @@ -176,24 +176,48 @@ CPPUNIT_TEST_FIXTURE(Test, testTdf155819) assertXPath(pDocument, "/primitive2D/transform/transform"_ostr, 4); } -CPPUNIT_TEST_FIXTURE(Test, testFilterFeBlend) -{ -xmlDocUniquePtr pDocument = dumpAndParseSvg(u"/svgio/qa/cppunit/data/filterFeBlend.svg"); - -assertXPath(pDocument, "/primitive2D/transform/transform/polypolygoncolor[1]"_ostr, "color"_ostr, "#8a2be2"); -assertXPath(pDocument, "/primitive2D/transform/transform/polypolygoncolor[1]/polypolygon"_ostr, "height"_ostr, "100"); -assertXPath(pDocument, "/primitive2D/transform/transform/polypolygoncolor[1]/polypolygon"_ostr, "width"_ostr, "100"); -assertXPath(pDocument, "/primitive2D/transform/transform/polypolygoncolor[1]/polypolygon"_ostr, "minx"_ostr, "70"); -assertXPath(pDocument, "/primitive2D/transform/transform/polypolygoncolor[1]/polypolygon"_ostr, "miny"_ostr, "70"); -assertXPath(pDocument, "/primitive2D/transform/transform/polypolygoncolor[1]/polypolygon"_ostr, "maxx"_ostr, "170"); -assertXPath(pDocument, "/primitive2D/transform/transform/polypolygoncolor[1]/polypolygon"_ostr, "maxy"_ostr, "170"); -assertXPath(pDocument, "/primitive2D/transform/transform/polypolygoncolor[2]"_ostr, "color"_ostr, "#ffd700"); -assertXPath(pDocument, "/primitive2D/transform/transform/polypolygoncolor[2]/polypolygon"_ostr, "height"_ostr, "100"); -assertXPath(pDocument, "/primitive2D/transform/transform/polypolygoncolor[2]/polypolygon"_ostr, "width"_ostr, "100"); -assertXPath(pDocument, "/primitive2D/transform/transform/polypolygoncolor[2]/polypolygon"_ostr, "minx"_ostr, "30"); -assertXPath(pDocument, "/primitive2D/transform/transform/polypolygoncolor[2]/polypolygon"_ostr, "miny"_ostr, "30"); -assertXPath(pDocument, "/primitive2D/transform/transform/polypolygoncolor[2]/polypolygon"_ostr, "maxx"_ostr, "130"); -assertXPath(pDocument, "/primitive2D/transform/transform/polypolygoncolor[2]/polypolygon"_ostr, "maxy"_ostr, "130"); +CPPUNIT_TEST_FIXTURE(Test, testNormalBlend) +{ +xmlDocUniquePtr pDocument = dumpAndParseSvg(u"/svgio/qa/cppunit/data/normalBlend.svg"); + +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "height"_ostr, "170"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "width"_
core.git: drawinglayer/source include/drawinglayer svgio/qa svgio/source
drawinglayer/source/drawinglayeruno/xprimitive2drenderer.cxx |3 drawinglayer/source/primitive2d/glowprimitive2d.cxx |3 drawinglayer/source/primitive2d/patternfillprimitive2d.cxx |6 drawinglayer/source/primitive2d/shadowprimitive2d.cxx|3 drawinglayer/source/primitive2d/softedgeprimitive2d.cxx |3 drawinglayer/source/processor2d/d2dpixelprocessor2d.cxx |5 drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx |8 - drawinglayer/source/tools/converters.cxx | 24 +-- include/drawinglayer/converters.hxx |8 - svgio/qa/cppunit/SvgImportTest.cxx | 76 --- svgio/qa/cppunit/data/tdf160782.svg | 43 ++ svgio/source/svgreader/svgfeblendnode.cxx| 24 +-- svgio/source/svgreader/svgfecompositenode.cxx| 24 +-- 13 files changed, 151 insertions(+), 79 deletions(-) New commits: commit 1097686ebddd48b78816d87524caadd17b788c23 Author: Xisco Fauli AuthorDate: Mon Apr 22 15:30:05 2024 +0200 Commit: Xisco Fauli CommitDate: Mon Apr 22 17:38:15 2024 +0200 tdf#160782: convert to bitmapEx from 0,0 to width,height This is the way it's done everywhere. Partially revert 4b6e0f2c88debaedb514c868e061c21e15215b6e "tdf#160726, tdf#48062: Simplify how BitmapExs are created" Change-Id: I15fea0b6855a65da7cb48b24fc00ba303e33dcf8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166456 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/drawinglayer/source/drawinglayeruno/xprimitive2drenderer.cxx b/drawinglayer/source/drawinglayeruno/xprimitive2drenderer.cxx index e50e59a1d76d..22a20f095d24 100644 --- a/drawinglayer/source/drawinglayeruno/xprimitive2drenderer.cxx +++ b/drawinglayer/source/drawinglayeruno/xprimitive2drenderer.cxx @@ -147,7 +147,8 @@ namespace drawinglayer::unorenderer convertToBitmapEx( std::move(xEmbedSeq), aViewInformation2D, -basegfx::B2DRange(0, 0, nDiscreteWidth, nDiscreteHeight), +nDiscreteWidth, +nDiscreteHeight, MaximumQuadraticPixels)); if(!aBitmapEx.IsEmpty()) diff --git a/drawinglayer/source/primitive2d/glowprimitive2d.cxx b/drawinglayer/source/primitive2d/glowprimitive2d.cxx index 5cec7a46f532..6bf9dea8af83 100644 --- a/drawinglayer/source/primitive2d/glowprimitive2d.cxx +++ b/drawinglayer/source/primitive2d/glowprimitive2d.cxx @@ -176,8 +176,7 @@ void GlowPrimitive2D::create2DDecomposition( // I have now added a helper that just creates the mask without having // to render the content, use it, it's faster const AlphaMask aAlpha(::drawinglayer::createAlphaMask( -std::move(xEmbedSeq), aViewInformation2D, -basegfx::B2DRange(0, 0, nDiscreteClippedWidth, nDiscreteClippedHeight), +std::move(xEmbedSeq), aViewInformation2D, nDiscreteClippedWidth, nDiscreteClippedHeight, nMaximumQuadraticPixels)); if (aAlpha.IsEmpty()) diff --git a/drawinglayer/source/primitive2d/patternfillprimitive2d.cxx b/drawinglayer/source/primitive2d/patternfillprimitive2d.cxx index 8068a386970c..516b0042d960 100644 --- a/drawinglayer/source/primitive2d/patternfillprimitive2d.cxx +++ b/drawinglayer/source/primitive2d/patternfillprimitive2d.cxx @@ -136,7 +136,8 @@ namespace drawinglayer::primitive2d convertToBitmapEx( std::move(xEmbedSeq), aViewInformation2D, -basegfx::B2DRange(0, 0, mnDiscreteWidth, mnDiscreteHeight), +mnDiscreteWidth, +mnDiscreteHeight, mnDiscreteWidth * mnDiscreteHeight)); if(!aBitmapEx.IsEmpty()) @@ -196,7 +197,8 @@ namespace drawinglayer::primitive2d return convertToBitmapEx( std::move(xEmbedSeq), aViewInformation2D, -basegfx::B2DRange(0, 0, nWidth, nHeight), +nWidth, +nHeight, nWidth * nHeight); } diff --git a/drawinglayer/source/primitive2d/shadowprimitive2d.cxx b/drawinglayer/source/primitive2d/shadowprimitive2d.cxx index c32f37bd9e8e..5de34c5440b6 100644 --- a/drawinglayer/source/primitive2d/shadowprimitive2d.cxx +++ b/drawinglayer/source/primitive2d/shadowprimitive2d.cxx @@ -217,8 +217,7 @@ void ShadowPrimitive2D::create2DDecomposition( // I have now added a helper that just creates the mask without having // to render the content, use it, it's faster const AlphaMask aAlpha(::drawinglayer::createAlphaMask( -std::move(xEmbedSeq), aViewInformation2D, -basegfx::B2D
core.git: include/vcl svgio/inc svgio/qa svgio/source vcl/Library_vcl.mk vcl/qa vcl/source
include/vcl/BitmapLightenBlendFilter.hxx | 29 ++ svgio/inc/svgfeblendnode.hxx |1 svgio/qa/cppunit/SvgImportTest.cxx | 44 ++ svgio/qa/cppunit/data/lightenBlend.svg |8 + svgio/source/svgreader/svgfeblendnode.cxx | 10 ++ vcl/Library_vcl.mk |1 vcl/qa/cppunit/BitmapFilterTest.cxx| 57 + vcl/source/bitmap/BitmapLightenBlendFilter.cxx | 109 + 8 files changed, 259 insertions(+) New commits: commit 41368edc6e2b16d4e0ea89b822064bb75dfadc01 Author: Xisco Fauli AuthorDate: Mon Apr 22 13:49:45 2024 +0200 Commit: Xisco Fauli CommitDate: Mon Apr 22 15:20:16 2024 +0200 tdf#159660: Add support for lighten mode in feBlend Change-Id: I17471a9c70a38d05de5ad476f817285fb2438e5a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166429 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/include/vcl/BitmapLightenBlendFilter.hxx b/include/vcl/BitmapLightenBlendFilter.hxx new file mode 100644 index ..e17a34dc8efd --- /dev/null +++ b/include/vcl/BitmapLightenBlendFilter.hxx @@ -0,0 +1,29 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + */ + +#ifndef INCLUDED_VCL_BITMAPLIGHTENBLENDFILTER_HXX +#define INCLUDED_VCL_BITMAPLIGHTENBLENDFILTER_HXX + +#include + +class VCL_DLLPUBLIC BitmapLightenBlendFilter +{ +private: +BitmapEx maBitmapEx; +BitmapEx maBitmapEx2; + +public: +BitmapLightenBlendFilter(BitmapEx const& rBmpEx, BitmapEx const& rBmpEx2); + +virtual ~BitmapLightenBlendFilter(); +BitmapEx execute(); +}; +#endif +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/svgio/inc/svgfeblendnode.hxx b/svgio/inc/svgfeblendnode.hxx index 7e6a6c747ea4..ef0a1952b1e6 100644 --- a/svgio/inc/svgfeblendnode.hxx +++ b/svgio/inc/svgfeblendnode.hxx @@ -27,6 +27,7 @@ namespace svgio::svgreader enum class Mode { Darken, +Lighten, Multiply, Normal, Screen diff --git a/svgio/qa/cppunit/SvgImportTest.cxx b/svgio/qa/cppunit/SvgImportTest.cxx index 87aa04887d2f..abf7f58c848b 100644 --- a/svgio/qa/cppunit/SvgImportTest.cxx +++ b/svgio/qa/cppunit/SvgImportTest.cxx @@ -1909,6 +1909,50 @@ CPPUNIT_TEST_FIXTURE(Test, testDarkenBlend) CPPUNIT_ASSERT_EQUAL(OUString("008000"), aPixels[125]); } +CPPUNIT_TEST_FIXTURE(Test, testLightenBlend) +{ +xmlDocUniquePtr pDocument = dumpAndParseSvg(u"/svgio/qa/cppunit/data/lightenBlend.svg"); + +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "height"_ostr, "150"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "width"_ostr, "150"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap/data"_ostr, 150); + +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "xy11"_ostr, "150"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "xy12"_ostr, "0"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "xy13"_ostr, "20"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "xy21"_ostr, "0"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "xy22"_ostr, "150"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "xy23"_ostr, "20"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "xy31"_ostr, "0"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "xy32"_ostr, "0"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "xy33"_ostr, "1"); + +// Check the colors in the diagonal +OUString sDataRow = getXPath(pDocument, "/primitive2D/transform/transform/bitmap/data[25]"_ostr, "row"_ostr); +std::vector aPixels = comphelper::string::split(sDataRow, ','); +CPPUNIT_ASSERT_EQUAL(OUString("ff"), aPixels[25]); + +sDataRow = getXPath(pDocument, "/primitive2D/transform/transform/bitmap/data[75]"_ostr, "row"_ostr); +aPixels = comphelper::string::split(sDataRow, '
core.git: 2 commits - include/vcl svgio/inc svgio/qa svgio/source vcl/Library_vcl.mk vcl/qa vcl/source
include/vcl/BitmapDarkenBlendFilter.hxx | 29 ++ include/vcl/BitmapMultiplyBlendFilter.hxx | 29 ++ svgio/inc/svgfeblendnode.hxx|2 svgio/qa/cppunit/SvgImportTest.cxx | 88 ++ svgio/qa/cppunit/data/darkenBlend.svg |8 + svgio/qa/cppunit/data/multiplyBlend.svg |8 + svgio/source/svgreader/svgfeblendnode.cxx | 30 +- vcl/Library_vcl.mk |2 vcl/qa/cppunit/BitmapFilterTest.cxx | 114 vcl/source/bitmap/BitmapDarkenBlendFilter.cxx | 109 ++ vcl/source/bitmap/BitmapMultiplyBlendFilter.cxx | 109 ++ 11 files changed, 525 insertions(+), 3 deletions(-) New commits: commit a9f1b705275ef9abbcf17366d8f3713235dd4675 Author: Xisco Fauli AuthorDate: Mon Apr 22 13:32:15 2024 +0200 Commit: Xisco Fauli CommitDate: Mon Apr 22 14:55:44 2024 +0200 tdf#159660: Add support for darken mode in feBlend Change-Id: I56862163b7bf1177120081c95ab7851a5fc4019b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166428 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/include/vcl/BitmapDarkenBlendFilter.hxx b/include/vcl/BitmapDarkenBlendFilter.hxx new file mode 100644 index ..ea017e13e0fa --- /dev/null +++ b/include/vcl/BitmapDarkenBlendFilter.hxx @@ -0,0 +1,29 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + */ + +#ifndef INCLUDED_VCL_BITMAPDARKENBLENDFILTER_HXX +#define INCLUDED_VCL_BITMAPDARKENBLENDFILTER_HXX + +#include + +class VCL_DLLPUBLIC BitmapDarkenBlendFilter +{ +private: +BitmapEx maBitmapEx; +BitmapEx maBitmapEx2; + +public: +BitmapDarkenBlendFilter(BitmapEx const& rBmpEx, BitmapEx const& rBmpEx2); + +virtual ~BitmapDarkenBlendFilter(); +BitmapEx execute(); +}; +#endif +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/svgio/inc/svgfeblendnode.hxx b/svgio/inc/svgfeblendnode.hxx index 86c79a4d353a..7e6a6c747ea4 100644 --- a/svgio/inc/svgfeblendnode.hxx +++ b/svgio/inc/svgfeblendnode.hxx @@ -26,6 +26,7 @@ namespace svgio::svgreader { enum class Mode { +Darken, Multiply, Normal, Screen diff --git a/svgio/qa/cppunit/SvgImportTest.cxx b/svgio/qa/cppunit/SvgImportTest.cxx index 8a97d5b93302..87aa04887d2f 100644 --- a/svgio/qa/cppunit/SvgImportTest.cxx +++ b/svgio/qa/cppunit/SvgImportTest.cxx @@ -1865,6 +1865,50 @@ CPPUNIT_TEST_FIXTURE(Test, testMultiplyBlend) CPPUNIT_ASSERT_EQUAL(OUString("008000"), aPixels[125]); } +CPPUNIT_TEST_FIXTURE(Test, testDarkenBlend) +{ +xmlDocUniquePtr pDocument = dumpAndParseSvg(u"/svgio/qa/cppunit/data/darkenBlend.svg"); + +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "height"_ostr, "150"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "width"_ostr, "150"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap/data"_ostr, 150); + +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "xy11"_ostr, "150"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "xy12"_ostr, "0"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "xy13"_ostr, "20"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "xy21"_ostr, "0"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "xy22"_ostr, "150"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "xy23"_ostr, "20"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "xy31"_ostr, "0"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "xy32"_ostr, "0"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "xy33"_ostr, "1"); + +// Check the colors in the diagonal +OUString sDataRow = getXPath(pDocument, "/primitive2D/transform/transform/bitmap/data[25]"_ostr, "row"_ostr); +std::vector aPixels = comphelper::string::split(sDataRow, ','); +CPPUNIT_ASSERT_EQUAL(OUStrin
core.git: Branch 'libreoffice-7-6' - 2 commits - download.lst framework/source
download.lst |4 ++-- framework/source/uielement/menubarmanager.cxx | 11 ++- 2 files changed, 12 insertions(+), 3 deletions(-) New commits: commit 6c8e7c60bd2b213ba3021eeacfb93f08a86d660c Author: Xisco Fauli AuthorDate: Mon Mar 25 11:23:27 2024 +0100 Commit: Christian Lohmaier CommitDate: Mon Apr 22 14:09:08 2024 +0200 postgresql: upgrade to release 13.14 Change-Id: Ia9607fd9c8dad9d5936e867ad76b18a476f1057f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165278 Tested-by: Jenkins Reviewed-by: Xisco Fauli (cherry picked from commit e311a6a09d753fb566f248d653434f10a4645e63) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165238 Reviewed-by: Christian Lohmaier diff --git a/download.lst b/download.lst index 5294f74dc6aa..b50ccbe3ebb2 100644 --- a/download.lst +++ b/download.lst @@ -465,8 +465,8 @@ POPPLER_DATA_TARBALL := poppler-data-0.4.12.tar.gz # three static lines # so that git cherry-pick # will not run into conflicts -POSTGRESQL_SHA256SUM := 4992ff647203566b670d4e54dc5317499a26856c93576d0ea951bdf6bee50bfb -POSTGRESQL_TARBALL := postgresql-13.11.tar.bz2 +POSTGRESQL_SHA256SUM := b8df078551898960bd500dc5d38a177e9905376df81fe7f2b660a1407fa6a5ed +POSTGRESQL_TARBALL := postgresql-13.14.tar.bz2 # three static lines # so that git cherry-pick # will not run into conflicts commit 83ac63d00243467ddaa9ed8031a8fa8ada20d1fb Author: Michael Stahl AuthorDate: Wed Mar 20 21:42:50 2024 +0100 Commit: Christian Lohmaier CommitDate: Mon Apr 22 14:08:56 2024 +0200 framework: MenuBarManager: fix WNT crash if queryDispatch() throws a Java extension throws RuntimeException from queryDispatch(), which is translated to a C++ exception and thrown by the mscx_uno bridge, and this is apparently not handled anywhere (Visual Studio says "Unhandled Exception"), and what happens then apparently is the exception goes poof and vanishes, and normal return from the mscx_uno bridge code happens, but the out parameter used for the return value is never initialised, and then the uno::Reference move assignment operator crashes. Change-Id: I21535fcf0ab4ec30a712d01b5039b7e2fb7b09d7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165081 Tested-by: Michael Stahl Reviewed-by: Michael Stahl (cherry picked from commit 447a15f4772bcbc9366cfa43b92c55ae644e9b03) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165114 Tested-by: Jenkins Reviewed-by: Christian Lohmaier diff --git a/framework/source/uielement/menubarmanager.cxx b/framework/source/uielement/menubarmanager.cxx index edbd88d2250c..fce1929d28e7 100644 --- a/framework/source/uielement/menubarmanager.cxx +++ b/framework/source/uielement/menubarmanager.cxx @@ -664,7 +664,16 @@ IMPL_LINK( MenuBarManager, Activate, Menu *, pMenu, bool ) if ( aTargetURL.Complete.startsWith( ".uno:StyleApply?" ) ) xMenuItemDispatch = new StyleDispatcher( m_xFrame, m_xURLTransformer, aTargetURL ); else -xMenuItemDispatch = xDispatchProvider->queryDispatch( aTargetURL, menuItemHandler->aTargetFrame, 0 ); +{ +try +{ +xMenuItemDispatch = xDispatchProvider->queryDispatch( aTargetURL, menuItemHandler->aTargetFrame, 0 ); +} +catch (uno::Exception const&) +{ +TOOLS_WARN_EXCEPTION("fwk.uielement", "MenuBarManager::Activate(): exception from queryDispatch()"); +} +} bool bPopupMenu( false ); if ( !menuItemHandler->xPopupMenuController.is() &&
core.git: svgio/qa vcl/source
svgio/qa/cppunit/SvgImportTest.cxx| 44 ++ svgio/qa/cppunit/data/screenBlend.svg |8 vcl/source/bitmap/BitmapScreenBlendFilter.cxx | 21 ++-- 3 files changed, 70 insertions(+), 3 deletions(-) New commits: commit 357e390be47f774aab8ffb09015aaf312abff06b Author: Xisco Fauli AuthorDate: Mon Apr 22 12:00:55 2024 +0200 Commit: Xisco Fauli CommitDate: Mon Apr 22 13:31:44 2024 +0200 tdf#159660: premultiply colors for screen blend This is needed after 4b6e0f2c88debaedb514c868e061c21e15215b6e "tdf#160726, tdf#48062: Simplify how BitmapExs are created" Otherwise, only the common area is displayed Change-Id: I40c798380049e62df8729c4acdb5db50d988d8e1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166426 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/svgio/qa/cppunit/SvgImportTest.cxx b/svgio/qa/cppunit/SvgImportTest.cxx index 93d43fae85e2..c336458df004 100644 --- a/svgio/qa/cppunit/SvgImportTest.cxx +++ b/svgio/qa/cppunit/SvgImportTest.cxx @@ -1777,6 +1777,50 @@ CPPUNIT_TEST_FIXTURE(Test, testTdf160726) CPPUNIT_ASSERT_EQUAL(OUString("00"), aPixels[200]); } +CPPUNIT_TEST_FIXTURE(Test, testScreenBlend) +{ +xmlDocUniquePtr pDocument = dumpAndParseSvg(u"/svgio/qa/cppunit/data/screenBlend.svg"); + +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "height"_ostr, "150"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "width"_ostr, "150"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap/data"_ostr, 150); + +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "xy11"_ostr, "150"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "xy12"_ostr, "0"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "xy13"_ostr, "20"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "xy21"_ostr, "0"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "xy22"_ostr, "150"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "xy23"_ostr, "20"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "xy31"_ostr, "0"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "xy32"_ostr, "0"); +assertXPath(pDocument, +"/primitive2D/transform/transform/bitmap"_ostr, "xy33"_ostr, "1"); + +// Check the colors in the diagonal +OUString sDataRow = getXPath(pDocument, "/primitive2D/transform/transform/bitmap/data[25]"_ostr, "row"_ostr); +std::vector aPixels = comphelper::string::split(sDataRow, ','); +CPPUNIT_ASSERT_EQUAL(OUString("ff"), aPixels[25]); + +sDataRow = getXPath(pDocument, "/primitive2D/transform/transform/bitmap/data[75]"_ostr, "row"_ostr); +aPixels = comphelper::string::split(sDataRow, ','); +CPPUNIT_ASSERT_EQUAL(OUString("ff8000"), aPixels[75]); + +sDataRow = getXPath(pDocument, "/primitive2D/transform/transform/bitmap/data[125]"_ostr, "row"_ostr); +aPixels = comphelper::string::split(sDataRow, ','); +CPPUNIT_ASSERT_EQUAL(OUString("008000"), aPixels[125]); +} + CPPUNIT_TEST_FIXTURE(Test, testTdf149880) { xmlDocUniquePtr pDocument = dumpAndParseSvg(u"/svgio/qa/cppunit/data/tdf149880.svg"); diff --git a/svgio/qa/cppunit/data/screenBlend.svg b/svgio/qa/cppunit/data/screenBlend.svg new file mode 100644 index ..6f1490983f68 --- /dev/null +++ b/svgio/qa/cppunit/data/screenBlend.svg @@ -0,0 +1,8 @@ +http://www.w3.org/2000/svg;> + + + + + + + diff --git a/vcl/source/bitmap/BitmapScreenBlendFilter.cxx b/vcl/source/bitmap/BitmapScreenBlendFilter.cxx index 67525a24cdf9..0964c519571d 100644 --- a/vcl/source/bitmap/BitmapScreenBlendFilter.cxx +++ b/vcl/source/bitmap/BitmapScreenBlendFilter.cxx @@ -30,6 +30,20 @@ static sal_uInt8 lcl_calculate(const sal_uInt8 aColor, const sal_uInt8 aColor2) return result * 255.0; } +static BitmapColor premultiply(const BitmapColor c) +{ +return BitmapColor(ColorAlpha, vcl::bitmap::premultiply(c.GetRed(), c.GetAlpha()), + vcl::bitmap::premultiply(c.GetGreen(), c.GetAlpha()), + vcl::bitmap::premultiply(c.GetBlue(), c.GetAlpha()), c.GetAlp
core.git: drawinglayer/source include/drawinglayer include/vcl svgio/inc svgio/qa svgio/source vcl/source
drawinglayer/source/drawinglayeruno/xprimitive2drenderer.cxx |3 drawinglayer/source/primitive2d/glowprimitive2d.cxx |3 drawinglayer/source/primitive2d/patternfillprimitive2d.cxx |6 drawinglayer/source/primitive2d/shadowprimitive2d.cxx|3 drawinglayer/source/primitive2d/softedgeprimitive2d.cxx |3 drawinglayer/source/processor2d/d2dpixelprocessor2d.cxx |5 drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx |8 drawinglayer/source/tools/converters.cxx | 24 - include/drawinglayer/converters.hxx |8 include/vcl/BitmapTools.hxx |4 svgio/inc/svgfilternode.hxx |3 svgio/qa/cppunit/SvgImportTest.cxx | 161 ++- svgio/qa/cppunit/data/arithmetic.svg |8 svgio/qa/cppunit/data/arithmetic2.svg|8 svgio/qa/cppunit/data/tdf160726.svg | 43 ++ svgio/source/svgreader/svgfeblendnode.cxx| 72 +++- svgio/source/svgreader/svgfecompositenode.cxx| 67 +++- svgio/source/svgreader/svgfilternode.cxx | 21 - vcl/source/bitmap/BitmapTools.cxx| 114 --- 19 files changed, 345 insertions(+), 219 deletions(-) New commits: commit 4b6e0f2c88debaedb514c868e061c21e15215b6e Author: Xisco Fauli AuthorDate: Sun Apr 21 20:41:55 2024 +0200 Commit: Xisco Fauli CommitDate: Mon Apr 22 11:53:41 2024 +0200 tdf#160726, tdf#48062: Simplify how BitmapExs are created In my initial approach, I tranformed the primitive2DContainers before converting them to BitmapEx. This caused circles like https://bugs.documentfoundation.org/attachment.cgi?id=193790 not to be displayed. Simplify how BitmapExs are created by just using the range both primitive2DContainers have in common. This way, DrawBitmapInRect can be dropped now Change-Id: I2401dc87b98e04b9cf9f5ebade2b5622d884fc3a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166391 Tested-by: Xisco Fauli Reviewed-by: Xisco Fauli diff --git a/drawinglayer/source/drawinglayeruno/xprimitive2drenderer.cxx b/drawinglayer/source/drawinglayeruno/xprimitive2drenderer.cxx index 22a20f095d24..e50e59a1d76d 100644 --- a/drawinglayer/source/drawinglayeruno/xprimitive2drenderer.cxx +++ b/drawinglayer/source/drawinglayeruno/xprimitive2drenderer.cxx @@ -147,8 +147,7 @@ namespace drawinglayer::unorenderer convertToBitmapEx( std::move(xEmbedSeq), aViewInformation2D, -nDiscreteWidth, -nDiscreteHeight, +basegfx::B2DRange(0, 0, nDiscreteWidth, nDiscreteHeight), MaximumQuadraticPixels)); if(!aBitmapEx.IsEmpty()) diff --git a/drawinglayer/source/primitive2d/glowprimitive2d.cxx b/drawinglayer/source/primitive2d/glowprimitive2d.cxx index 6bf9dea8af83..5cec7a46f532 100644 --- a/drawinglayer/source/primitive2d/glowprimitive2d.cxx +++ b/drawinglayer/source/primitive2d/glowprimitive2d.cxx @@ -176,7 +176,8 @@ void GlowPrimitive2D::create2DDecomposition( // I have now added a helper that just creates the mask without having // to render the content, use it, it's faster const AlphaMask aAlpha(::drawinglayer::createAlphaMask( -std::move(xEmbedSeq), aViewInformation2D, nDiscreteClippedWidth, nDiscreteClippedHeight, +std::move(xEmbedSeq), aViewInformation2D, +basegfx::B2DRange(0, 0, nDiscreteClippedWidth, nDiscreteClippedHeight), nMaximumQuadraticPixels)); if (aAlpha.IsEmpty()) diff --git a/drawinglayer/source/primitive2d/patternfillprimitive2d.cxx b/drawinglayer/source/primitive2d/patternfillprimitive2d.cxx index 516b0042d960..8068a386970c 100644 --- a/drawinglayer/source/primitive2d/patternfillprimitive2d.cxx +++ b/drawinglayer/source/primitive2d/patternfillprimitive2d.cxx @@ -136,8 +136,7 @@ namespace drawinglayer::primitive2d convertToBitmapEx( std::move(xEmbedSeq), aViewInformation2D, -mnDiscreteWidth, -mnDiscreteHeight, +basegfx::B2DRange(0, 0, mnDiscreteWidth, mnDiscreteHeight), mnDiscreteWidth * mnDiscreteHeight)); if(!aBitmapEx.IsEmpty()) @@ -197,8 +196,7 @@ namespace drawinglayer::primitive2d return convertToBitmapEx( std::move(xEmbedSeq), aViewInformation2D, -nWidth, -nHeight, +basegfx::B2DRange(0, 0, nWidth, nHeight), nWidth
core.git: svgio/inc svgio/source
svgio/inc/svgfefloodnode.hxx |1 - svgio/inc/svgfeimagenode.hxx |1 - svgio/source/svgreader/svgfefloodnode.cxx | 11 --- svgio/source/svgreader/svgfeimagenode.cxx | 11 --- 4 files changed, 24 deletions(-) New commits: commit ae5e743f90fbb4e7016d6d9f4c22bce971a5f5cb Author: Xisco Fauli AuthorDate: Sun Apr 21 19:04:08 2024 +0200 Commit: Xisco Fauli CommitDate: Sun Apr 21 22:34:44 2024 +0200 svgio: feImage and feFlood don't support the in attribute Added by mistake in b22039cff8380b158307e75762bd3e4ca045d77b "related: tdf#159947: only parse in/result if the element supports them" See https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/in Change-Id: Ie8b5591349eff710d1edc7f413790ac9d31df99d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166389 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/svgio/inc/svgfefloodnode.hxx b/svgio/inc/svgfefloodnode.hxx index 8aba2c3b0340..39e5cb6b1890 100644 --- a/svgio/inc/svgfefloodnode.hxx +++ b/svgio/inc/svgfefloodnode.hxx @@ -27,7 +27,6 @@ namespace svgio::svgreader class SvgFeFloodNode final : public SvgFilterNode { private: -OUString maIn; OUString maResult; SvgNumber maX; SvgNumber maY; diff --git a/svgio/inc/svgfeimagenode.hxx b/svgio/inc/svgfeimagenode.hxx index ab303fdc92fe..743568fa65ce 100644 --- a/svgio/inc/svgfeimagenode.hxx +++ b/svgio/inc/svgfeimagenode.hxx @@ -27,7 +27,6 @@ namespace svgio::svgreader class SvgFeImageNode final : public SvgFilterNode { private: -OUString maIn; OUString maResult; OUString maUrl; // external link OUString maData; // base64 data diff --git a/svgio/source/svgreader/svgfefloodnode.cxx b/svgio/source/svgreader/svgfefloodnode.cxx index ede285b6d756..8ac62d79c8d9 100644 --- a/svgio/source/svgreader/svgfefloodnode.cxx +++ b/svgio/source/svgreader/svgfefloodnode.cxx @@ -49,11 +49,6 @@ void SvgFeFloodNode::parseAttribute(SVGToken aSVGToken, const OUString& aContent readLocalCssStyle(aContent); break; } -case SVGToken::In: -{ -maIn = aContent.trim(); -break; -} case SVGToken::Result: { maResult = aContent.trim(); @@ -145,12 +140,6 @@ void SvgFeFloodNode::apply(drawinglayer::primitive2d::Primitive2DContainer& rTar if (fWidth <= 0.0 || fHeight <= 0.0) return; -if (const drawinglayer::primitive2d::Primitive2DContainer* rSource -= pParent->findGraphicSource(maIn)) -{ -rTarget = *rSource; -} - const double fX(maX.solve(*this, NumberType::xcoordinate)); const double fY(maY.solve(*this, NumberType::ycoordinate)); const basegfx::B2DRange aRange(fX, fY, fX + fWidth, fY + fHeight); diff --git a/svgio/source/svgreader/svgfeimagenode.cxx b/svgio/source/svgreader/svgfeimagenode.cxx index c7b1f65b8f2d..6a7e5dd9d9c3 100644 --- a/svgio/source/svgreader/svgfeimagenode.cxx +++ b/svgio/source/svgreader/svgfeimagenode.cxx @@ -46,11 +46,6 @@ void SvgFeImageNode::parseAttribute(SVGToken aSVGToken, const OUString& aContent readLocalCssStyle(aContent); break; } -case SVGToken::In: -{ -maIn = aContent.trim(); -break; -} case SVGToken::Result: { maResult = aContent.trim(); @@ -79,12 +74,6 @@ void SvgFeImageNode::parseAttribute(SVGToken aSVGToken, const OUString& aContent void SvgFeImageNode::apply(drawinglayer::primitive2d::Primitive2DContainer& rTarget, const SvgFilterNode* pParent) const { -if (const drawinglayer::primitive2d::Primitive2DContainer* rSource -= pParent->findGraphicSource(maIn)) -{ -rTarget = *rSource; -} - BitmapEx aBitmapEx; if (!maData.isEmpty())
core.git: svgio/qa
svgio/qa/cppunit/SvgImportTest.cxx | 11 +-- 1 file changed, 1 insertion(+), 10 deletions(-) New commits: commit 7e0b8e74dd6de7a337ab08a8be2921aeef765117 Author: Xisco Fauli AuthorDate: Fri Apr 19 17:59:33 2024 +0200 Commit: Mike Kaganski CommitDate: Sat Apr 20 08:55:18 2024 +0200 svgio: remove duplicated assertXPathDouble Change-Id: I82c4abc6883d292114b4239efee60aee082357fc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166307 Tested-by: Jenkins Reviewed-by: Mike Kaganski diff --git a/svgio/qa/cppunit/SvgImportTest.cxx b/svgio/qa/cppunit/SvgImportTest.cxx index 8831dc5c9058..03daa49ff9b1 100644 --- a/svgio/qa/cppunit/SvgImportTest.cxx +++ b/svgio/qa/cppunit/SvgImportTest.cxx @@ -41,8 +41,6 @@ protected: Primitive2DSequence parseSvg(std::u16string_view aSource); xmlDocUniquePtr dumpAndParseSvg(std::u16string_view aSource); -void assertXPathDouble(const xmlDocUniquePtr& pXmlDoc, const OString& rXPath, - const OString& rAttribute, double nExpectedValue, double delta); }; Primitive2DSequence Test::parseSvg(std::u16string_view aSource) @@ -93,13 +91,6 @@ void Test::checkRectPrimitive(Primitive2DSequence const & rPrimitive) assertXPath(pDocument, "/primitive2D/transform/polypolygonstroke/line"_ostr, "width"_ostr, "3"); // rect stroke width } -void Test::assertXPathDouble(const xmlDocUniquePtr& pXmlDoc, const OString& rXPath, - const OString& rAttribute, double nExpectedValue, double delta) -{ -auto sVal = getXPath(pXmlDoc, rXPath, rAttribute); -CPPUNIT_ASSERT_DOUBLES_EQUAL(nExpectedValue, sVal.toDouble(), delta); -} - namespace { bool arePrimitive2DSequencesEqual(const Primitive2DSequence& rA, const Primitive2DSequence& rB) @@ -735,7 +726,7 @@ CPPUNIT_TEST_FIXTURE(Test, testTdf156834) assertXPath(pDocument, "/primitive2D/transform/textsimpleportion[3]"_ostr, "text"_ostr, "Hanging"); assertXPath(pDocument, "/primitive2D/transform/textsimpleportion[3]"_ostr, "x"_ostr, "30"); -assertXPathDouble(pDocument, "/primitive2D/transform/textsimpleportion[3]"_ostr, "y"_ostr, 93.5, 0.5); +assertXPathDoubleValue(pDocument, "/primitive2D/transform/textsimpleportion[3]"_ostr, "y"_ostr, 93.5, 0.5); assertXPath(pDocument, "/primitive2D/transform/textsimpleportion[4]"_ostr, "text"_ostr, "Central"); assertXPath(pDocument, "/primitive2D/transform/textsimpleportion[4]"_ostr, "x"_ostr, "30");