svgio/inc/svgpatternnode.hxx              |   12 ++++++------
 svgio/source/svgreader/svgpatternnode.cxx |    8 ++++----
 2 files changed, 10 insertions(+), 10 deletions(-)

New commits:
commit 08a7f95d68343e260e9b5faace55c0d4caaba5b4
Author:     Noel Grandin <noel.gran...@collabora.co.uk>
AuthorDate: Tue Feb 28 10:01:49 2023 +0200
Commit:     Noel Grandin <noel.gran...@collabora.co.uk>
CommitDate: Tue Feb 28 12:13:26 2023 +0000

    no need to allocate SvgUnits separately
    
    it is only one pointer big
    
    Change-Id: Iad5444ed6783abc2916510fd83c5b5a11d17e8f7
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/147950
    Tested-by: Jenkins
    Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk>

diff --git a/svgio/inc/svgpatternnode.hxx b/svgio/inc/svgpatternnode.hxx
index 60c6b7f7ced8..219ca52eae73 100644
--- a/svgio/inc/svgpatternnode.hxx
+++ b/svgio/inc/svgpatternnode.hxx
@@ -43,10 +43,10 @@ namespace svgio::svgreader
             SvgNumber               maY;
             SvgNumber               maWidth;
             SvgNumber               maHeight;
-            std::unique_ptr<SvgUnits>
-                                    mpPatternUnits;
-            std::unique_ptr<SvgUnits>
-                                    mpPatternContentUnits;
+            std::optional<SvgUnits>
+                                    moPatternUnits;
+            std::optional<SvgUnits>
+                                    moPatternContentUnits;
             std::optional<basegfx::B2DHomMatrix>
                                     mpaPatternTransform;
 
@@ -99,11 +99,11 @@ namespace svgio::svgreader
 
             /// PatternUnits content
             const SvgUnits* getPatternUnits() const;
-            void setPatternUnits(const SvgUnits aPatternUnits) { 
mpPatternUnits.reset( new SvgUnits(aPatternUnits) ); }
+            void setPatternUnits(const SvgUnits aPatternUnits) { 
moPatternUnits = aPatternUnits; }
 
             /// PatternContentUnits content
             const SvgUnits* getPatternContentUnits() const;
-            void setPatternContentUnits(const SvgUnits aPatternContentUnits) { 
mpPatternContentUnits.reset( new SvgUnits(aPatternContentUnits) ); }
+            void setPatternContentUnits(const SvgUnits aPatternContentUnits) { 
moPatternContentUnits = aPatternContentUnits; }
 
             /// PatternTransform content
             std::optional<basegfx::B2DHomMatrix> getPatternTransform() const;
diff --git a/svgio/source/svgreader/svgpatternnode.cxx 
b/svgio/source/svgreader/svgpatternnode.cxx
index ff7f5768d3d0..9b94c537eaef 100644
--- a/svgio/source/svgreader/svgpatternnode.cxx
+++ b/svgio/source/svgreader/svgpatternnode.cxx
@@ -402,9 +402,9 @@ namespace svgio::svgreader
 
         const SvgUnits* SvgPatternNode::getPatternUnits() const
         {
-            if(mpPatternUnits)
+            if(moPatternUnits)
             {
-                return mpPatternUnits.get();
+                return &*moPatternUnits;
             }
 
             const_cast< SvgPatternNode* >(this)->tryToFindLink();
@@ -422,9 +422,9 @@ namespace svgio::svgreader
 
         const SvgUnits* SvgPatternNode::getPatternContentUnits() const
         {
-            if(mpPatternContentUnits)
+            if(moPatternContentUnits)
             {
-                return mpPatternContentUnits.get();
+                return &*moPatternContentUnits;
             }
 
             const_cast< SvgPatternNode* >(this)->tryToFindLink();

Reply via email to