]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mds: fix bad iterator usage in process_reconnected_caps()
authorSage Weil <sage@newdream.net>
Mon, 30 Aug 2010 19:51:31 +0000 (12:51 -0700)
committerSage Weil <sage@newdream.net>
Tue, 7 Sep 2010 19:10:27 +0000 (12:10 -0700)
We use p->second, so don't increment p++ early in the loop block.

src/mds/MDCache.cc

index 06a6d97d02c9eef6bc78f2f05337b87a17a34754..7c7d7636d96c5d60dc4032edc8e3cecd7d90011a 100644 (file)
@@ -3976,10 +3976,10 @@ void MDCache::process_reconnected_caps()
   map<client_t,MClientSnap*> splits;
 
   // adjust lock states appropriately
-  map<CInode*,map<client_t,inodeno_t> >::iterator p = reconnected_caps.begin();
-  while (p != reconnected_caps.end()) {
+  for (map<CInode*,map<client_t,inodeno_t> >::iterator p = reconnected_caps.begin();
+       p != reconnected_caps.end();
+       p++) {
     CInode *in = p->first;
-    p++;
 
     in->choose_lock_states();
     dout(15) << " chose lock states on " << *in << dendl;