[Libreoffice-commits] core.git: 2 commits - include/tools include/vcl tools/source vcl/source
Caolán McNamara
caolanm at redhat.com
Fri Sep 2 14:25:18 UTC 2016
include/tools/poly.hxx | 2 ++
include/vcl/bitmap.hxx | 1 +
tools/source/generic/poly.cxx | 6 ++++++
tools/source/generic/poly2.cxx | 6 ++++++
vcl/source/gdi/bitmap.cxx | 9 +++++++++
5 files changed, 24 insertions(+)
New commits:
commit 85cf08c19f3ba3ca9dc7b5320c0bdab90242b94a
Author: Caolán McNamara <caolanm at redhat.com>
Date: Fri Sep 2 09:38:53 2016 +0100
coverity#1371213 Missing move assignment operator
Change-Id: I2454a230cd9a524086beba1a2ca32ea0b70bf17e
diff --git a/include/tools/poly.hxx b/include/tools/poly.hxx
index 79da3e8..3258a84 100644
--- a/include/tools/poly.hxx
+++ b/include/tools/poly.hxx
@@ -159,6 +159,7 @@ public:
Point& operator[]( sal_uInt16 nPos );
tools::Polygon& operator=( const tools::Polygon& rPoly );
+ tools::Polygon& operator=( tools::Polygon&& rPoly );
bool operator==( const tools::Polygon& rPoly ) const;
bool operator!=( const tools::Polygon& rPoly ) const
{ return !(Polygon::operator==( rPoly )); }
@@ -246,6 +247,7 @@ public:
tools::Polygon& operator[]( sal_uInt16 nPos );
tools::PolyPolygon& operator=( const tools::PolyPolygon& rPolyPoly );
+ tools::PolyPolygon& operator=( tools::PolyPolygon&& rPolyPoly );
bool operator==( const tools::PolyPolygon& rPolyPoly ) const;
bool operator!=( const tools::PolyPolygon& rPolyPoly ) const
{ return !(PolyPolygon::operator==( rPolyPoly )); }
diff --git a/tools/source/generic/poly.cxx b/tools/source/generic/poly.cxx
index 25baea0..a49d998 100644
--- a/tools/source/generic/poly.cxx
+++ b/tools/source/generic/poly.cxx
@@ -1525,6 +1525,12 @@ tools::Polygon& Polygon::operator=( const tools::Polygon& rPoly )
return *this;
}
+tools::Polygon& Polygon::operator=( tools::Polygon&& rPoly )
+{
+ std::swap(mpImplPolygon, rPoly.mpImplPolygon);
+ return *this;
+}
+
bool Polygon::operator==( const tools::Polygon& rPoly ) const
{
diff --git a/tools/source/generic/poly2.cxx b/tools/source/generic/poly2.cxx
index 08f1bb8..df7c515 100644
--- a/tools/source/generic/poly2.cxx
+++ b/tools/source/generic/poly2.cxx
@@ -536,6 +536,12 @@ PolyPolygon& PolyPolygon::operator=( const tools::PolyPolygon& rPolyPoly )
return *this;
}
+PolyPolygon& PolyPolygon::operator=( tools::PolyPolygon&& rPolyPoly )
+{
+ std::swap(mpImplPolyPolygon, rPolyPoly.mpImplPolyPolygon);
+ return *this;
+}
+
bool PolyPolygon::operator==( const tools::PolyPolygon& rPolyPoly ) const
{
if ( rPolyPoly.mpImplPolyPolygon == mpImplPolyPolygon )
commit 590fc29a66bc3301023f28a7d4c33ac0b0f5eba6
Author: Caolán McNamara <caolanm at redhat.com>
Date: Fri Sep 2 09:26:53 2016 +0100
coverity#1371159 Missing move assignment operator
Change-Id: I1470d6a27cb5ee5a98ddb13f4f12cb0b7289b282
diff --git a/include/vcl/bitmap.hxx b/include/vcl/bitmap.hxx
index f342650..f509e18 100644
--- a/include/vcl/bitmap.hxx
+++ b/include/vcl/bitmap.hxx
@@ -247,6 +247,7 @@ public:
virtual ~Bitmap();
Bitmap& operator=( const Bitmap& rBitmap );
+ Bitmap& operator=( Bitmap&& rBitmap );
inline bool operator!() const;
inline bool operator==( const Bitmap& rBitmap ) const;
inline bool operator!=( const Bitmap& rBitmap ) const;
diff --git a/vcl/source/gdi/bitmap.cxx b/vcl/source/gdi/bitmap.cxx
index 63425de..a2187f3 100644
--- a/vcl/source/gdi/bitmap.cxx
+++ b/vcl/source/gdi/bitmap.cxx
@@ -230,6 +230,15 @@ Bitmap& Bitmap::operator=( const Bitmap& rBitmap )
return *this;
}
+Bitmap& Bitmap::operator=( Bitmap&& rBitmap )
+{
+ maPrefSize = std::move(rBitmap.maPrefSize);
+ maPrefMapMode = std::move(rBitmap.maPrefMapMode);
+ mxImpBmp = std::move(rBitmap.mxImpBmp);
+
+ return *this;
+}
+
bool Bitmap::IsEqual( const Bitmap& rBmp ) const
{
return(IsSameInstance(rBmp) || // Includes both are nullptr
More information about the Libreoffice-commits
mailing list