From bfc7011c73f6e91a665725df0c9f28b6c6113f98 Mon Sep 17 00:00:00 2001
From: scott snyder <scott.snyder@cern.ch>
Date: Sat, 2 Sep 2017 16:17:16 +0200
Subject: [PATCH] Navigation: Coverity 113434.

Coverity warning: Add move assignment to NavigableToken.
---
 Control/Navigation/Navigation/NavigationToken.h | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)

diff --git a/Control/Navigation/Navigation/NavigationToken.h b/Control/Navigation/Navigation/NavigationToken.h
index 9e41a16925b0..4891c1e6947b 100644
--- a/Control/Navigation/Navigation/NavigationToken.h
+++ b/Control/Navigation/Navigation/NavigationToken.h
@@ -269,7 +269,7 @@ class NavigationToken : public INavigationToken
  // copy operator
  NavigationToken& operator=(const NavigationToken & anotherToken)
  {
-   if ( anotherToken.m_data != 0 )
+   if ( this != &anotherToken && anotherToken.m_data != 0 )
      {
        m_data         = anotherToken.m_data;
        m_navCondition = anotherToken.m_navCondition; 
@@ -278,6 +278,18 @@ class NavigationToken : public INavigationToken
    return *this;
  }
 
+ // move operator
+ NavigationToken& operator=(NavigationToken&& anotherToken)
+ {
+   if ( this != &anotherToken && anotherToken.m_data != 0 )
+     {
+       m_data         = std::move (anotherToken.m_data);
+       m_navCondition = anotherToken.m_navCondition; 
+       m_navSelector  = anotherToken.m_navSelector;
+     }   
+   return *this;
+ }
+
  // dump 
  void dumpStore();
 
-- 
GitLab