summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMurray Cumming <murrayc@murrayc.com>2015-09-01 15:19:33 +0200
committerMurray Cumming <murrayc@murrayc.com>2015-09-01 15:19:33 +0200
commit3ba3f685afd637aa3493c585ef304e702d8a4538 (patch)
tree1937b967baf4db0e9930a02983946d3f9b1dfcf1
parent482a6bb7a5c4e55084056fb2d5578f9ec61fa97c (diff)
downloadsigc++-3ba3f685afd637aa3493c585ef304e702d8a4538.tar.gz
trackable: Add missing operator=(&&) implementation.
-rw-r--r--sigc++/trackable.cc10
1 files changed, 10 insertions, 0 deletions
diff --git a/sigc++/trackable.cc b/sigc++/trackable.cc
index fd92029..83c87cb 100644
--- a/sigc++/trackable.cc
+++ b/sigc++/trackable.cc
@@ -51,6 +51,16 @@ trackable& trackable::operator=(const trackable& src)
return *this;
}
+trackable& trackable::operator=(trackable&& src)
+{
+ if(this != &src)
+ notify_callbacks(); //Make sure that we have finished with existing stuff before replacing it.
+
+ callback_list_ = std::move(src.callback_list_);
+
+ return *this;
+}
+
trackable::~trackable()
{
notify_callbacks();