[Libreoffice-commits] core.git: Branch 'distro/collabora/cp-5.1' - 3 commits - external/curl include/svx reportdesign/source sc/source sd/source sfx2/source svx/source

Caolán McNamara caolanm at redhat.com
Wed Jul 13 19:06:16 UTC 2016


 external/curl/ExternalProject_curl.mk              |    2 -
 include/svx/svdundo.hxx                            |    5 +-
 reportdesign/source/core/inc/ReportUndoFactory.hxx |    2 -
 reportdesign/source/core/sdr/ReportUndoFactory.cxx |    4 +-
 sc/source/core/data/drwlayer.cxx                   |    2 -
 sd/source/core/drawdoc3.cxx                        |   13 ++++++-
 sfx2/source/sidebar/SidebarController.cxx          |    6 +--
 svx/source/svdraw/svdundo.cxx                      |   37 ++++++++++++---------
 8 files changed, 44 insertions(+), 27 deletions(-)

New commits:
commit 5aac7f3a0f63f9342a65206eca3f979515c9e62f
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Wed Jul 6 10:10:27 2016 +0100

    Resolves: rhbz#1353069 don't clear XATTR_FILL* from stylesheet if...
    
    the master page is not the sole owner. Which happens when copying
    and pasting slides which bring along a duplicate master page to
    an already existing one, and the attempt to remove the duplicate
    strips the fill properties from the shared stylesheet in use by
    the other
    
    regression from...
    
    commit b876bbe2cacce8af379b10d82da6c7e7d229b361
    Author: David Tardon <dtardon at redhat.com>
    Date:   Tue Apr 26 09:17:11 2016 +0200
    
        rbhz#1326602 avoid exp. bg bitmaps from deleted slides
    
    (cherry picked from commit de4908eb4d2f1f2ce38a37eea18a9efc4a0073b1)
    
    Reviewed-on: https://gerrit.libreoffice.org/26976
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: David Tardon <dtardon at redhat.com>
    (cherry picked from commit fad4d7877ac8d04ab82e8acd21205f315d6eab1f)
    
    Change-Id: I91fb8f622a0e35741ecc37cef14fc93199bb730b

diff --git a/include/svx/svdundo.hxx b/include/svx/svdundo.hxx
index d11a312..63f532c 100644
--- a/include/svx/svdundo.hxx
+++ b/include/svx/svdundo.hxx
@@ -588,9 +588,10 @@ class SVX_DLLPUBLIC SdrUndoDelPage : public SdrUndoPageList
     SdrUndoGroup*               pUndoGroup;
     std::unique_ptr<SfxPoolItem> mpFillBitmapItem;
     bool mbHasFillBitmap;
+    bool mbSoleOwnerOfFillBitmapProps;
 
 public:
-    SdrUndoDelPage(SdrPage& rNewPg);
+    SdrUndoDelPage(SdrPage& rNewPg, bool bSoleOwnerOfFillBitmapProps);
     virtual ~SdrUndoDelPage();
 
     virtual void Undo() override;
@@ -762,7 +763,7 @@ public:
     virtual SdrUndoAction* CreateUndoMoveLayer(sal_uInt16 nLayerNum, SdrLayerAdmin& rNewLayerAdmin, SdrModel& rNewModel, sal_uInt16 nNeuPos1);
 
     // Page
-    virtual SdrUndoAction*  CreateUndoDeletePage(SdrPage& rPage);
+    virtual SdrUndoAction* CreateUndoDeletePage(SdrPage& rPage, bool bSoleOwnerOfFillBitmapProps = true);
     virtual SdrUndoAction* CreateUndoNewPage(SdrPage& rPage);
     virtual SdrUndoAction* CreateUndoCopyPage(SdrPage& rPage);
     virtual SdrUndoAction* CreateUndoSetPageNum(SdrPage& rNewPg, sal_uInt16 nOldPageNum1, sal_uInt16 nNewPageNum1);
diff --git a/reportdesign/source/core/inc/ReportUndoFactory.hxx b/reportdesign/source/core/inc/ReportUndoFactory.hxx
index 88d0024..1839f1f 100644
--- a/reportdesign/source/core/inc/ReportUndoFactory.hxx
+++ b/reportdesign/source/core/inc/ReportUndoFactory.hxx
@@ -59,7 +59,7 @@ namespace rptui
         virtual SdrUndoAction* CreateUndoMoveLayer(sal_uInt16 nLayerNum, SdrLayerAdmin& rNewLayerAdmin, SdrModel& rNewModel, sal_uInt16 nNeuPos1) override;
 
         // page
-        virtual SdrUndoAction*  CreateUndoDeletePage(SdrPage& rPage) override;
+        virtual SdrUndoAction* CreateUndoDeletePage(SdrPage& rPage, bool bSoleOwnerOfFillBitmapProps = true) override;
         virtual SdrUndoAction* CreateUndoNewPage(SdrPage& rPage) override;
         virtual SdrUndoAction* CreateUndoCopyPage(SdrPage& rPage) override;
         virtual SdrUndoAction* CreateUndoSetPageNum(SdrPage& rNewPg, sal_uInt16 nOldPageNum1, sal_uInt16 nNewPageNum1) override;
diff --git a/reportdesign/source/core/sdr/ReportUndoFactory.cxx b/reportdesign/source/core/sdr/ReportUndoFactory.cxx
index cbb5a8a..566400c 100644
--- a/reportdesign/source/core/sdr/ReportUndoFactory.cxx
+++ b/reportdesign/source/core/sdr/ReportUndoFactory.cxx
@@ -133,9 +133,9 @@ SdrUndoAction* OReportUndoFactory::CreateUndoMoveLayer(sal_uInt16 nLayerNum, Sdr
 }
 
 // page
-SdrUndoAction*  OReportUndoFactory::CreateUndoDeletePage(SdrPage& rPage)
+SdrUndoAction*  OReportUndoFactory::CreateUndoDeletePage(SdrPage& rPage, bool bSoleOwnerOfFillBitmapProps)
 {
-    return m_pUndoFactory->CreateUndoDeletePage( rPage );
+    return m_pUndoFactory->CreateUndoDeletePage(rPage, bSoleOwnerOfFillBitmapProps);
 }
 
 SdrUndoAction* OReportUndoFactory::CreateUndoNewPage(SdrPage& rPage)
diff --git a/sc/source/core/data/drwlayer.cxx b/sc/source/core/data/drwlayer.cxx
index 6235250..39956ca 100644
--- a/sc/source/core/data/drwlayer.cxx
+++ b/sc/source/core/data/drwlayer.cxx
@@ -409,7 +409,7 @@ void ScDrawLayer::ScRemovePage( SCTAB nTab )
     if (bRecording)
     {
         SdrPage* pPage = GetPage(static_cast<sal_uInt16>(nTab));
-        AddCalcUndo(new SdrUndoDelPage(*pPage));        // Undo-Action becomes the page owner
+        AddCalcUndo(new SdrUndoDelPage(*pPage, true));  // Undo-Action becomes the page owner
         RemovePage( static_cast<sal_uInt16>(nTab) );    // just deliver, not deleting
     }
     else
diff --git a/sd/source/core/drawdoc3.cxx b/sd/source/core/drawdoc3.cxx
index d993b2b..a86bdbd 100644
--- a/sd/source/core/drawdoc3.cxx
+++ b/sd/source/core/drawdoc3.cxx
@@ -796,8 +796,17 @@ bool SdDrawDocument::InsertBookmarkAsPage(
                  aTest == aMPLayout &&
                  eKind == pTest->GetPageKind() )
             {
-                if( bUndo )
-                    AddUndo(GetSdrUndoFactory().CreateUndoDeletePage(*pRefPage));
+                if (bUndo)
+                {
+                    bool bSoleOwnerOfStyleSheet = true;
+                    if (pRefPage->IsMasterPage())
+                    {
+                        const SfxStyleSheet* pRefSheet = pRefPage->getSdrPageProperties().GetStyleSheet();
+                        const SfxStyleSheet* pTestSheet = pTest->getSdrPageProperties().GetStyleSheet();
+                        bSoleOwnerOfStyleSheet = pRefSheet != pTestSheet;
+                    }
+                    AddUndo(GetSdrUndoFactory().CreateUndoDeletePage(*pRefPage, bSoleOwnerOfStyleSheet));
+                }
 
                 RemoveMasterPage(nPage);
 
diff --git a/svx/source/svdraw/svdundo.cxx b/svx/source/svdraw/svdundo.cxx
index 24d3e03..835d34b 100644
--- a/svx/source/svdraw/svdundo.cxx
+++ b/svx/source/svdraw/svdundo.cxx
@@ -1444,10 +1444,11 @@ SdrUndoPageList::~SdrUndoPageList()
 }
 
 
-SdrUndoDelPage::SdrUndoDelPage(SdrPage& rNewPg)
+SdrUndoDelPage::SdrUndoDelPage(SdrPage& rNewPg, bool bSoleOwnerOfFillBitmapProps)
     : SdrUndoPageList(rNewPg)
     , pUndoGroup(nullptr)
     , mbHasFillBitmap(false)
+    , mbSoleOwnerOfFillBitmapProps(bSoleOwnerOfFillBitmapProps)
 {
     bItsMine = true;
 
@@ -1557,12 +1558,15 @@ void SdrUndoDelPage::clearFillBitmap()
 {
     if (mrPage.IsMasterPage())
     {
-        SfxStyleSheet* const pStyleSheet = mrPage.getSdrPageProperties().GetStyleSheet();
-        assert(bool(pStyleSheet)); // who took away my stylesheet?
-        SfxItemSet& rItemSet = pStyleSheet->GetItemSet();
-        rItemSet.ClearItem(XATTR_FILLBITMAP);
-        if (mbHasFillBitmap)
-            rItemSet.ClearItem(XATTR_FILLSTYLE);
+        if (mbSoleOwnerOfFillBitmapProps)
+        {
+            SfxStyleSheet* const pStyleSheet = mrPage.getSdrPageProperties().GetStyleSheet();
+            assert(bool(pStyleSheet)); // who took away my stylesheet?
+            SfxItemSet& rItemSet = pStyleSheet->GetItemSet();
+            rItemSet.ClearItem(XATTR_FILLBITMAP);
+            if (mbHasFillBitmap)
+                rItemSet.ClearItem(XATTR_FILLSTYLE);
+        }
     }
     else
     {
@@ -1577,12 +1581,15 @@ void SdrUndoDelPage::restoreFillBitmap()
 {
     if (mrPage.IsMasterPage())
     {
-        SfxStyleSheet* const pStyleSheet = mrPage.getSdrPageProperties().GetStyleSheet();
-        assert(bool(pStyleSheet)); // who took away my stylesheet?
-        SfxItemSet& rItemSet = pStyleSheet->GetItemSet();
-        rItemSet.Put(*mpFillBitmapItem);
-        if (mbHasFillBitmap)
-            rItemSet.Put(XFillStyleItem(css::drawing::FillStyle_BITMAP));
+        if (mbSoleOwnerOfFillBitmapProps)
+        {
+            SfxStyleSheet* const pStyleSheet = mrPage.getSdrPageProperties().GetStyleSheet();
+            assert(bool(pStyleSheet)); // who took away my stylesheet?
+            SfxItemSet& rItemSet = pStyleSheet->GetItemSet();
+            rItemSet.Put(*mpFillBitmapItem);
+            if (mbHasFillBitmap)
+                rItemSet.Put(XFillStyleItem(css::drawing::FillStyle_BITMAP));
+        }
     }
     else
     {
@@ -1839,9 +1846,9 @@ SdrUndoAction* SdrUndoFactory::CreateUndoMoveLayer(sal_uInt16 nLayerNum, SdrLaye
 }
 
 // page
-SdrUndoAction*  SdrUndoFactory::CreateUndoDeletePage(SdrPage& rPage)
+SdrUndoAction*  SdrUndoFactory::CreateUndoDeletePage(SdrPage& rPage, bool bSoleOwnerOfFillBitmapProps)
 {
-    return new SdrUndoDelPage( rPage );
+    return new SdrUndoDelPage(rPage, bSoleOwnerOfFillBitmapProps);
 }
 
 SdrUndoAction* SdrUndoFactory::CreateUndoNewPage(SdrPage& rPage)
commit 7ecb97ec1b1deb7371cb6ab846ff1abe89a21e35
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Thu Jun 30 12:48:06 2016 +0100

    Resolves: tdf#100692 crash in sidebar on deleting image from writer
    
    stumbled on this in passing and it has the same bt as
    
    http://crashreport.libreoffice.org/stats/signature/vcl::Window::setPosSizePixel(long,long,long,long,PosSizeFlags)
    
    Change-Id: I1f19275029b05f353dfa823a2ff435e5045250a6
    (cherry picked from commit 675c8faefd8756f7c43312f23eb341797bcbca4d)
    Reviewed-on: https://gerrit.libreoffice.org/26805
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: David Tardon <dtardon at redhat.com>
    (cherry picked from commit 34513f90abf15d7b5670fe3732e854d60f7358c5)

diff --git a/sfx2/source/sidebar/SidebarController.cxx b/sfx2/source/sidebar/SidebarController.cxx
index 07882ed..74973d1 100644
--- a/sfx2/source/sidebar/SidebarController.cxx
+++ b/sfx2/source/sidebar/SidebarController.cxx
@@ -313,7 +313,7 @@ void SAL_CALL SidebarController::requestLayout()
     throw(css::uno::RuntimeException, std::exception)
 {
     sal_Int32 nMinimalWidth = 0;
-    if (mpCurrentDeck)
+    if (mpCurrentDeck && !mpCurrentDeck->isDisposed())
     {
         mpCurrentDeck->RequestLayout();
         nMinimalWidth = mpCurrentDeck->GetMinimalWidth();
@@ -361,7 +361,7 @@ void SidebarController::NotifyResize()
     else
         bIsDeckVisible = false;
 
-    if (mpCurrentDeck)
+    if (mpCurrentDeck && !mpCurrentDeck->isDisposed())
     {
         SfxSplitWindow* pSplitWindow = GetSplitWindow();
         WindowAlign eAlign = pSplitWindow ? pSplitWindow->GetAlign() : WindowAlign::Right;
@@ -395,7 +395,7 @@ void SidebarController::NotifyResize()
 
     // Determine if the closer of the deck can be shown.
     sal_Int32 nMinimalWidth = 0;
-    if (mpCurrentDeck)
+    if (mpCurrentDeck && !mpCurrentDeck->isDisposed())
     {
         DeckTitleBar* pTitleBar = mpCurrentDeck->GetTitleBar();
         if (pTitleBar != nullptr && pTitleBar->IsVisible())
commit ffe24d6c32db348efbdb351d7eec9f20d3120171
Author: Markus Mohrhard <markus.mohrhard at googlemail.com>
Date:   Thu Jul 7 23:35:45 2016 +0200

    tdf#100295 try to cover second place in curl using GetTickCount64
    
    Conflicts:
    	external/curl/ExternalProject_curl.mk
    
    Change-Id: I08e51f70c7b0c92a8c1b8b06e7eb2f1437e2f3f4
    Reviewed-on: https://gerrit.libreoffice.org/27027
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>
    (cherry picked from commit 6efd6c49003987a58c83bc23d6a3fbb67999ff9e)

diff --git a/external/curl/ExternalProject_curl.mk b/external/curl/ExternalProject_curl.mk
index 9dd4a07..d91b61c 100644
--- a/external/curl/ExternalProject_curl.mk
+++ b/external/curl/ExternalProject_curl.mk
@@ -81,7 +81,7 @@ $(call gb_ExternalProject_get_state_target,curl,build):
 	$(call gb_ExternalProject_run,build,\
 		MAKEFLAGS= LIB="$(ILIB)" nmake -f Makefile.vc10 \
 			cfg=$(if $(MSVC_USE_DEBUG_RUNTIME),debug-dll,release-dll) \
-			EXCFLAGS="/EHa /Zc:wchar_t- /D_CRT_SECURE_NO_DEPRECATE /DUSE_WINDOWS_SSPI $(SOLARINC)" $(if $(filter X86_64,$(CPUNAME)),MACHINE=X64) \
+			EXCFLAGS="/EHa /Zc:wchar_t- /D_CRT_SECURE_NO_DEPRECATE /DUSE_WINDOWS_SSPI /D_USING_V110_SDK71_ $(SOLARINC)" $(if $(filter X86_64,$(CPUNAME)),MACHINE=X64) \
 	,lib)
 
 endif


More information about the Libreoffice-commits mailing list