]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mds: get rid of the redundant code 19237/head
authorroot <tdd108128@163.com>
Wed, 29 Nov 2017 14:02:39 +0000 (22:02 +0800)
committerroot <tdd108128@163.com>
Wed, 29 Nov 2017 14:56:34 +0000 (22:56 +0800)
Signed-off-by: dongdong tao <tdd21151186@gmail.com>
src/mds/journal.cc

index 4e6ab183bb88dc4533ec22ad3159dcc3381fcb93..ec18809930ed2c11c1bb4153405639cb1b13fad0 100644 (file)
@@ -1016,11 +1016,8 @@ void EMetaBlob::get_paths(
     for (list<ceph::shared_ptr<fullbit> >::const_iterator
         iter = fb_list.begin(); iter != fb_list.end(); ++iter) {
       std::string const &dentry = (*iter)->dn;
-      children[dir_ino].push_back(dentry);
-      ino_locations[(*iter)->inode.ino] = Location(dir_ino, dentry);
       if (children.find((*iter)->inode.ino) == children.end()) {
         leaf_locations.push_back(Location(dir_ino, dentry));
-
       }
     }
 
@@ -1044,14 +1041,15 @@ void EMetaBlob::get_paths(
     Location const &loc = *i;
     std::string path = loc.second;
     inodeno_t ino = loc.first;
-    while(ino_locations.find(ino) != ino_locations.end()) {
-      Location const &loc = ino_locations[ino];
+    std::map<inodeno_t, Location>::iterator iter = ino_locations.find(ino);
+    while(iter != ino_locations.end()) {
+      Location const &loc = iter->second;
       if (!path.empty()) {
         path = loc.second + "/" + path;
       } else {
         path = loc.second + path;
       }
-      ino = loc.first;
+      iter = ino_locations.find(loc.first);
     }
 
     paths.push_back(path);