]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mon/Monitor.cc: fix potential null deref
authorDanny Al-Gaaf <danny.al-gaaf@bisect.de>
Thu, 11 Jun 2015 13:39:43 +0000 (15:39 +0200)
committerDanny Al-Gaaf <danny.al-gaaf@bisect.de>
Fri, 17 Jul 2015 08:50:44 +0000 (10:50 +0200)
Access logger object in remove_all_sessions() only if the
object exists.

Fix for:

CID 1225102 (#1 of 1): Dereference before null check (REVERSE_INULL)
 check_after_deref: Null-checking this->logger suggests that it may be
 null, but it has already been dereferenced on all paths leading to the
 check.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
src/mon/Monitor.cc

index 2dd320aef9b1f0a8b93fbb750baafbc87df28716..3428feb1bb7263761e47bf2271027f0e99176712 100644 (file)
@@ -3361,9 +3361,11 @@ void Monitor::remove_all_sessions()
   while (!session_map.sessions.empty()) {
     MonSession *s = session_map.sessions.front();
     remove_session(s);
-    logger->inc(l_mon_session_rm);
+    if (logger)
+      logger->inc(l_mon_session_rm);
   }
-  logger->set(l_mon_num_sessions, session_map.get_size());
+  if (logger)
+    logger->set(l_mon_num_sessions, session_map.get_size());
 }
 
 void Monitor::send_command(const entity_inst_t& inst,