chart2/source/controller/dialogs/tp_ChartType.cxx |   23 ++++++++++++----------
 1 file changed, 13 insertions(+), 10 deletions(-)

New commits:
commit 163dd5df9f080a141e201a32c40ff80e1a5d2e34
Author:     Mike Kaganski <mike.kagan...@collabora.com>
AuthorDate: Sat Nov 3 21:49:05 2018 +0300
Commit:     Mike Kaganski <mike.kagan...@collabora.com>
CommitDate: Sat Nov 3 22:02:42 2018 +0100

    tdf#120703 PVS: V1023
    
    V1023 A pointer without owner is added to the 
'm_aChartTypeDialogControllerList'
          container by the 'emplace_back' method. A memory leak will occur in 
case
          of an exception.
    
    Change-Id: I35bf344fd083c6a1717a150f78370ec59f206240
    Reviewed-on: https://gerrit.libreoffice.org/62821
    Tested-by: Jenkins
    Reviewed-by: Mike Kaganski <mike.kagan...@collabora.com>

diff --git a/chart2/source/controller/dialogs/tp_ChartType.cxx 
b/chart2/source/controller/dialogs/tp_ChartType.cxx
index 75f8a76ff5f8..e80e2303e433 100644
--- a/chart2/source/controller/dialogs/tp_ChartType.cxx
+++ b/chart2/source/controller/dialogs/tp_ChartType.cxx
@@ -28,6 +28,7 @@
 
 #include <svtools/controldims.hxx>
 
+#include <o3tl/make_unique.hxx>
 #include <vcl/weld.hxx>
 #include <tools/diagnose_ex.h>
 #include <sal/log.hxx>
@@ -654,22 +655,24 @@ ChartTypeTabPage::ChartTypeTabPage(TabPageParent pParent 
, const uno::Reference<
         }
     }
 
-    m_aChartTypeDialogControllerList.emplace_back(new 
ColumnChartDialogController() );
-    m_aChartTypeDialogControllerList.emplace_back(new 
BarChartDialogController() );
-    m_aChartTypeDialogControllerList.emplace_back(new 
PieChartDialogController() );
-    m_aChartTypeDialogControllerList.emplace_back(new 
AreaChartDialogController() );
-    m_aChartTypeDialogControllerList.emplace_back(new 
LineChartDialogController() );
+    
m_aChartTypeDialogControllerList.push_back(o3tl::make_unique<ColumnChartDialogController>());
+    
m_aChartTypeDialogControllerList.push_back(o3tl::make_unique<BarChartDialogController>());
+    
m_aChartTypeDialogControllerList.push_back(o3tl::make_unique<PieChartDialogController>());
+    
m_aChartTypeDialogControllerList.push_back(o3tl::make_unique<AreaChartDialogController>());
+    
m_aChartTypeDialogControllerList.push_back(o3tl::make_unique<LineChartDialogController>());
     if (bEnableComplexChartTypes)
     {
-        m_aChartTypeDialogControllerList.emplace_back(new 
XYChartDialogController() );
-        m_aChartTypeDialogControllerList.emplace_back(new 
BubbleChartDialogController() );
+        
m_aChartTypeDialogControllerList.push_back(o3tl::make_unique<XYChartDialogController>());
+        m_aChartTypeDialogControllerList.push_back(
+            o3tl::make_unique<BubbleChartDialogController>());
     }
-    m_aChartTypeDialogControllerList.emplace_back(new 
NetChartDialogController() );
+    
m_aChartTypeDialogControllerList.push_back(o3tl::make_unique<NetChartDialogController>());
     if (bEnableComplexChartTypes)
     {
-        m_aChartTypeDialogControllerList.emplace_back(new 
StockChartDialogController() );
+        
m_aChartTypeDialogControllerList.push_back(o3tl::make_unique<StockChartDialogController>());
     }
-    m_aChartTypeDialogControllerList.emplace_back(new 
CombiColumnLineChartDialogController() );
+    m_aChartTypeDialogControllerList.push_back(
+        o3tl::make_unique<CombiColumnLineChartDialogController>());
 
     for (auto const& elem : m_aChartTypeDialogControllerList)
     {
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to