]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
DBObjectMap::_get_header fix shadowed var causing dead code
authorSamuel Just <sam.just@inktank.com>
Tue, 25 Sep 2012 21:13:54 +0000 (14:13 -0700)
committerSamuel Just <sam.just@inktank.com>
Tue, 25 Sep 2012 21:13:54 +0000 (14:13 -0700)
CID 716897: Logically dead code (DEADCODE)At (5): Execution cannot reach this
statement "return r;".

The outer r was shadowed.  Instead, just return the error code from the
loop.

Signed-off-by: Samuel Just <sam.just@inktank.com>
src/os/DBObjectMap.cc

index dd9f218b5b901c8991dcb449382987c1a3486ab1..83b746d80e99bed629a2ddb604853ed5c1f0d945 100644 (file)
@@ -550,23 +550,22 @@ int DBObjectMap::get_header(const hobject_t &hoid,
 int DBObjectMap::_get_header(Header header,
                             bufferlist *bl)
 {
-  int r = 0;
   map<string, bufferlist> out;
-  while (r == 0) {
+  while (true) {
     out.clear();
     set<string> to_get;
     to_get.insert(USER_HEADER_KEY);
     int r = db->get(sys_prefix(header), to_get, &out);
     if (r == 0 && out.size())
       break;
+    if (r < 0)
+      return r;
     Header current(header);
     if (!current->parent)
       break;
     header = lookup_parent(current);
   }
 
-  if (r < 0)
-    return r;
   if (out.size())
     bl->swap(out.begin()->second);
   return 0;