]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
uclient: fixing a backwards test in Client::put_cap_ref that resulted in
authorGreg Farnum <gregf@hq.newdream.net>
Tue, 1 Sep 2009 01:52:55 +0000 (18:52 -0700)
committerGreg Farnum <gregf@hq.newdream.net>
Tue, 1 Sep 2009 01:52:55 +0000 (18:52 -0700)
bad Inode ref counting.

src/client/Client.cc

index 01c8569bd5fc562d118ac6b8e737f43455e9f8c9..1ce70ca90f3d93338fd9ac264b82296b1fd1c2de 100644 (file)
@@ -1443,7 +1443,7 @@ void Client::put_cap_ref(Inode *in, int cap)
       signal_cond_list(in->waitfor_caps);  // wake up blocked sync writers
     }
     if (cap & CEPH_CAP_FILE_BUFFER) {
-      int last = in->cap_refs[CEPH_CAP_FILE_BUFFER];
+      bool last = (in->cap_refs[CEPH_CAP_FILE_BUFFER] == 0);
       for (map<snapid_t,CapSnap>::iterator p = in->cap_snaps.begin();
           p != in->cap_snaps.end();
           p++)