[Scummvm-git-logs] scummvm master -> 8bd2e17233314fe8d9bdcab65a12082c2e9bcad2

dreammaster dreammaster at scummvm.org
Tue Mar 16 01:53:39 UTC 2021


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
8bd2e17233 ULTIMA: Fix Clang warnings


Commit: 8bd2e17233314fe8d9bdcab65a12082c2e9bcad2
    https://github.com/scummvm/scummvm/commit/8bd2e17233314fe8d9bdcab65a12082c2e9bcad2
Author: Orgad Shaneh (orgads at gmail.com)
Date: 2021-03-15T18:53:37-07:00

Commit Message:
ULTIMA: Fix Clang warnings

warning: definition of implicit copy assignment operator for 'X' is deprecated because it has a user-declared copy constructor

Changed paths:
    engines/ultima/shared/core/str.h
    engines/ultima/shared/gfx/sprites.cpp
    engines/ultima/shared/gfx/sprites.h
    engines/ultima/ultima4/map/map_tile.h


diff --git a/engines/ultima/shared/core/str.h b/engines/ultima/shared/core/str.h
index 6a41b1fc06..3b9a9ff113 100644
--- a/engines/ultima/shared/core/str.h
+++ b/engines/ultima/shared/core/str.h
@@ -45,6 +45,7 @@ public:
 	String(const String &str) : Common::String(str) {}
 	String(const Common::String &str) : Common::String(str) {}
 	explicit String(char c) : Common::String(c) {}
+	String& operator=(const String &str) { this->Common::String::operator=(str); return *this; }
 
 	/**
 	 * Returns the index of a given character, or -1 if not present
diff --git a/engines/ultima/shared/gfx/sprites.cpp b/engines/ultima/shared/gfx/sprites.cpp
index 18b690dd47..5b0f110cce 100644
--- a/engines/ultima/shared/gfx/sprites.cpp
+++ b/engines/ultima/shared/gfx/sprites.cpp
@@ -52,6 +52,12 @@ Sprite::Sprite(const byte *src, uint bpp, uint16 w, uint16 h) {
 	}
 }
 
+Sprite &Sprite::operator=(const Sprite &src) {
+	_surface.copyFrom(src._surface);
+	_transSurface.copyFrom(src._transSurface);
+	return *this;
+}
+
 void Sprite::draw(Graphics::ManagedSurface &dest, const Common::Point &pt) {
 	// Get area to be drawn on
 	Graphics::Surface s = dest.getSubArea(Common::Rect(pt.x, pt.y, pt.x + _surface.w, pt.y + _surface.h));
diff --git a/engines/ultima/shared/gfx/sprites.h b/engines/ultima/shared/gfx/sprites.h
index ce865feabb..1f413c482e 100644
--- a/engines/ultima/shared/gfx/sprites.h
+++ b/engines/ultima/shared/gfx/sprites.h
@@ -55,6 +55,11 @@ public:
 	 */
 	Sprite(const byte *src, uint bpp, uint16 w = 16, uint16 h = 16);
 
+	/**
+	 * Copy assignment operator
+	 */
+	Sprite &operator=(const Sprite &src);
+
 	/**
 	 * Draw a tile onto a passed surface
 	 */
diff --git a/engines/ultima/ultima4/map/map_tile.h b/engines/ultima/ultima4/map/map_tile.h
index 9b1b4e3062..f4d64901df 100644
--- a/engines/ultima/ultima4/map/map_tile.h
+++ b/engines/ultima/ultima4/map/map_tile.h
@@ -38,8 +38,6 @@ public:
 	}
 	MapTile(const TileId &i, byte f = 0) : _id(i), _frame(f), _freezeAnimation(false) {
 	}
-	MapTile(const MapTile &t) : _id(t._id), _frame(t._frame), _freezeAnimation(t._freezeAnimation) {
-	}
 
 	TileId getId() const {
 		return _id;




More information about the Scummvm-git-logs mailing list