core.git: sc/source

2024-05-31 Thread Xisco Fauli (via logerrit)
 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

2024-05-31 Thread Xisco Fauli (via logerrit)
 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

2024-05-30 Thread Xisco Fauli (via logerrit)
 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

2024-05-30 Thread Xisco Fauli

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

2024-05-30 Thread Xisco Fauli (via logerrit)
/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

2024-05-30 Thread Xisco Fauli (via logerrit)
 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

2024-05-29 Thread Xisco Fauli (via logerrit)
 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

2024-05-29 Thread Xisco Fauli (via logerrit)
 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

2024-05-29 Thread Xisco Fauli (via logerrit)
 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

2024-05-29 Thread Xisco Fauli (via logerrit)
 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

2024-05-28 Thread Xisco Fauli (via logerrit)
 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

2024-05-28 Thread Xisco Fauli (via logerrit)
 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

2024-05-27 Thread Xisco Fauli (via logerrit)
 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

2024-05-27 Thread Xisco Fauli (via logerrit)
 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

2024-05-27 Thread Xisco Fauli (via logerrit)
 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

2024-05-27 Thread Xisco Fauli (via logerrit)
 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

2024-05-27 Thread Xisco Fauli (via logerrit)
 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

2024-05-27 Thread Xisco Fauli (via logerrit)
 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

2024-05-27 Thread Xisco Fauli (via logerrit)
 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

2024-05-27 Thread Xisco Fauli (via logerrit)
 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

2024-05-26 Thread Xisco Fauli (via logerrit)
 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

2024-05-23 Thread Xisco Fauli (via logerrit)
 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

2024-05-23 Thread Xisco Fauli (via logerrit)
 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

2024-05-23 Thread Xisco Fauli (via logerrit)
 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

2024-05-23 Thread Xisco Fauli (via logerrit)
 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

2024-05-23 Thread Xisco Fauli (via logerrit)
 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

2024-05-23 Thread Xisco Fauli (via logerrit)
 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

2024-05-23 Thread Xisco Fauli (via logerrit)
 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

2024-05-23 Thread Xisco Fauli (via logerrit)
 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

2024-05-23 Thread Xisco Fauli (via logerrit)
 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

2024-05-23 Thread Xisco Fauli (via logerrit)
 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

2024-05-22 Thread Xisco Fauli (via logerrit)
 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

2024-05-22 Thread Xisco Fauli (via logerrit)
 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

2024-05-22 Thread Xisco Fauli (via logerrit)
 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

2024-05-22 Thread Xisco Fauli (via logerrit)
 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

2024-05-22 Thread Xisco Fauli (via logerrit)
 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

2024-05-21 Thread Xisco Fauli (via logerrit)
 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

2024-05-21 Thread Xisco Fauli (via logerrit)
 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

2024-05-21 Thread Xisco Fauli (via logerrit)
 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

2024-05-20 Thread Xisco Fauli (via logerrit)
 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

2024-05-18 Thread Xisco Fauli (via logerrit)
 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

2024-05-17 Thread Xisco Fauli (via logerrit)
 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

2024-05-16 Thread Xisco Fauli (via logerrit)
 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

2024-05-16 Thread Xisco Fauli (via logerrit)
 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

2024-05-15 Thread Xisco Fauli (via logerrit)
 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

2024-05-15 Thread Xisco Fauli (via logerrit)
 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

2024-05-14 Thread Xisco Fauli (via logerrit)
 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

2024-05-14 Thread Xisco Fauli (via logerrit)
 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

2024-05-14 Thread Xisco Fauli (via logerrit)
 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

2024-05-13 Thread Xisco Fauli (via logerrit)
 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

2024-05-13 Thread Xisco Fauli (via logerrit)
 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

2024-05-13 Thread Xisco Fauli (via logerrit)
 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

2024-05-13 Thread Xisco Fauli (via logerrit)
 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

2024-05-13 Thread Xisco Fauli (via logerrit)
 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

2024-05-13 Thread Xisco Fauli (via logerrit)
 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

2024-05-13 Thread Xisco Fauli (via logerrit)
 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

2024-05-10 Thread Xisco Fauli (via logerrit)
 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

2024-05-10 Thread Xisco Fauli (via logerrit)
 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

2024-05-10 Thread Xisco Fauli (via logerrit)
 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

2024-05-10 Thread Xisco Fauli (via logerrit)
 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

2024-05-09 Thread Xisco Fauli (via logerrit)
 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

2024-05-07 Thread Xisco Fauli (via logerrit)
 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

2024-05-07 Thread Xisco Fauli (via logerrit)
 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

2024-05-07 Thread Xisco Fauli (via logerrit)
 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

2024-05-07 Thread Xisco Fauli (via logerrit)
 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

2024-05-06 Thread Xisco Fauli (via logerrit)
 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

2024-05-06 Thread Xisco Fauli (via logerrit)
 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

2024-05-06 Thread Xisco Fauli (via logerrit)
 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

2024-05-06 Thread Xisco Fauli (via logerrit)
 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

2024-05-06 Thread Xisco Fauli (via logerrit)
 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

2024-05-06 Thread Xisco Fauli (via logerrit)
 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

2024-05-06 Thread Xisco Fauli (via logerrit)
 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

2024-05-03 Thread Xisco Fauli (via logerrit)
 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

2024-05-03 Thread Xisco Fauli (via logerrit)
 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

2024-05-03 Thread Xisco Fauli (via logerrit)
 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

2024-05-03 Thread Xisco Fauli (via logerrit)
 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

2024-05-03 Thread Xisco Fauli (via logerrit)
 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

2024-05-03 Thread Xisco Fauli (via logerrit)
 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

2024-05-02 Thread Xisco Fauli (via logerrit)
 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

2024-04-30 Thread Xisco Fauli (via logerrit)
 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

2024-04-30 Thread Xisco Fauli (via logerrit)
 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

2024-04-29 Thread Xisco Fauli (via logerrit)
 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

2024-04-26 Thread Xisco Fauli (via logerrit)
 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

2024-04-26 Thread Xisco Fauli (via logerrit)
 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

2024-04-26 Thread Xisco Fauli (via logerrit)
 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

2024-04-25 Thread Xisco Fauli (via logerrit)
 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

2024-04-25 Thread Xisco Fauli (via logerrit)
 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

2024-04-25 Thread Xisco Fauli (via logerrit)
 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

2024-04-24 Thread Xisco Fauli (via logerrit)
 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

2024-04-24 Thread Xisco Fauli (via logerrit)
 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

2024-04-23 Thread Xisco Fauli (via logerrit)
 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

2024-04-22 Thread Xisco Fauli (via logerrit)
 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

2024-04-22 Thread Xisco Fauli (via logerrit)
 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

2024-04-22 Thread Xisco Fauli (via logerrit)
 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

2024-04-22 Thread Xisco Fauli (via logerrit)
 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

2024-04-22 Thread Xisco Fauli (via logerrit)
 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

2024-04-22 Thread Xisco Fauli (via logerrit)
 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

2024-04-22 Thread Xisco Fauli (via logerrit)
 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

2024-04-21 Thread Xisco Fauli (via logerrit)
 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

2024-04-20 Thread Xisco Fauli (via logerrit)
 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");


  1   2   3   4   5   6   7   8   9   10   >