[Libreoffice-commits] core.git: 2 commits - connectivity/source include/connectivity include/svx svx/source

Caolán McNamara caolanm at redhat.com
Fri Oct 28 09:10:41 UTC 2016


 connectivity/source/commontools/dbmetadata.cxx       |   11 +++++++++--
 include/connectivity/dbmetadata.hxx                  |    2 ++
 include/svx/AccessibleShapeTreeInfo.hxx              |    2 ++
 svx/source/accessibility/AccessibleShape.cxx         |    2 +-
 svx/source/accessibility/AccessibleShapeTreeInfo.cxx |    9 +++++++++
 svx/source/table/accessiblecell.cxx                  |    2 +-
 6 files changed, 24 insertions(+), 4 deletions(-)

New commits:
commit 807151aa13ce788adc2cd3b452ceec9177430304
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Fri Oct 28 09:44:08 2016 +0100

    coverity#1371275 Missing move assignment operator
    
    Change-Id: I6c47c797d2654506bdc95c35b2558ce812f4070d

diff --git a/connectivity/source/commontools/dbmetadata.cxx b/connectivity/source/commontools/dbmetadata.cxx
index 090d410..bdb7f03 100644
--- a/connectivity/source/commontools/dbmetadata.cxx
+++ b/connectivity/source/commontools/dbmetadata.cxx
@@ -175,7 +175,6 @@ namespace dbtools
     {
     }
 
-
     DatabaseMetaData::DatabaseMetaData( const Reference< XConnection >& _connection )
         :m_pImpl( new DatabaseMetaData_Impl )
     {
@@ -188,6 +187,10 @@ namespace dbtools
     {
     }
 
+    DatabaseMetaData::DatabaseMetaData( DatabaseMetaData&& _copyFrom )
+        :m_pImpl(std::move(_copyFrom.m_pImpl))
+    {
+    }
 
     DatabaseMetaData& DatabaseMetaData::operator=( const DatabaseMetaData& _copyFrom )
     {
@@ -198,12 +201,16 @@ namespace dbtools
         return *this;
     }
 
+    DatabaseMetaData& DatabaseMetaData::operator=( DatabaseMetaData&& _copyFrom )
+    {
+        m_pImpl = std::move(_copyFrom.m_pImpl);
+        return *this;
+    }
 
     DatabaseMetaData::~DatabaseMetaData()
     {
     }
 
-
     bool DatabaseMetaData::isConnected() const
     {
         return m_pImpl->xConnection.is();
diff --git a/include/connectivity/dbmetadata.hxx b/include/connectivity/dbmetadata.hxx
index f4a9032..b16f8ed 100644
--- a/include/connectivity/dbmetadata.hxx
+++ b/include/connectivity/dbmetadata.hxx
@@ -71,6 +71,8 @@ namespace dbtools
             const css::uno::Reference< css::sdbc::XConnection >& _connection );
         DatabaseMetaData( const DatabaseMetaData& _copyFrom );
         DatabaseMetaData& operator=( const DatabaseMetaData& _copyFrom );
+        DatabaseMetaData( DatabaseMetaData&& _copyFrom );
+        DatabaseMetaData& operator=( DatabaseMetaData&& _copyFrom );
 
         ~DatabaseMetaData();
 
commit 5aa43c380a14869c03525396757debbddb602b44
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Fri Oct 28 09:38:27 2016 +0100

    coverity#1371262 Missing move assignment operator
    
    Change-Id: Ibb430a683f818add50facc23ac2893b558bff70c

diff --git a/include/svx/AccessibleShapeTreeInfo.hxx b/include/svx/AccessibleShapeTreeInfo.hxx
index 68430f6..df3d39a0 100644
--- a/include/svx/AccessibleShapeTreeInfo.hxx
+++ b/include/svx/AccessibleShapeTreeInfo.hxx
@@ -66,6 +66,8 @@ public:
 
     AccessibleShapeTreeInfo& operator= (const AccessibleShapeTreeInfo& rInfo);
 
+    void dispose();
+
     /** Deprecated.  Don't use this method.
     */
     void SetDocumentWindow (const css::uno::Reference<
diff --git a/svx/source/accessibility/AccessibleShape.cxx b/svx/source/accessibility/AccessibleShape.cxx
index c1c39be..bcbebd3 100644
--- a/svx/source/accessibility/AccessibleShape.cxx
+++ b/svx/source/accessibility/AccessibleShape.cxx
@@ -1264,7 +1264,7 @@ void AccessibleShape::disposing()
     // Cleanup.  Remove references to objects to allow them to be
     // destroyed.
     mxShape = nullptr;
-    maShapeTreeInfo = AccessibleShapeTreeInfo();
+    maShapeTreeInfo.dispose();
 
     // Call base classes.
     AccessibleContextBase::dispose ();
diff --git a/svx/source/accessibility/AccessibleShapeTreeInfo.cxx b/svx/source/accessibility/AccessibleShapeTreeInfo.cxx
index 214725c..837c730 100644
--- a/svx/source/accessibility/AccessibleShapeTreeInfo.cxx
+++ b/svx/source/accessibility/AccessibleShapeTreeInfo.cxx
@@ -48,6 +48,15 @@ AccessibleShapeTreeInfo::AccessibleShapeTreeInfo (const AccessibleShapeTreeInfo&
     // Empty.
 }
 
+void AccessibleShapeTreeInfo::dispose()
+{
+    mxDocumentWindow.clear();
+    mxModelBroadcaster.clear();
+    mpView = nullptr;
+    mxController.clear();
+    mpWindow.reset();
+    mpViewForwarder = nullptr;
+}
 
 AccessibleShapeTreeInfo& AccessibleShapeTreeInfo::operator= (const AccessibleShapeTreeInfo& rInfo)
 {
diff --git a/svx/source/table/accessiblecell.cxx b/svx/source/table/accessiblecell.cxx
index 5dcb29f..97be877 100644
--- a/svx/source/table/accessiblecell.cxx
+++ b/svx/source/table/accessiblecell.cxx
@@ -528,7 +528,7 @@ void AccessibleCell::disposing()
     // Cleanup.  Remove references to objects to allow them to be
     // destroyed.
     mxCell.clear();
-    maShapeTreeInfo = AccessibleShapeTreeInfo();
+    maShapeTreeInfo.dispose();
 
     // Call base classes.
     AccessibleContextBase::dispose ();


More information about the Libreoffice-commits mailing list