From: Sage Weil Date: Wed, 23 Jul 2008 18:00:00 +0000 (-0700) Subject: objectcacher: fix truncation bug X-Git-Tag: v0.4~419 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=8a37642b3ccbc9becd2261122f268d05822c1551;p=ceph.git objectcacher: fix truncation bug --- diff --git a/src/osdc/ObjectCacher.cc b/src/osdc/ObjectCacher.cc index 675c05ad19d5..9ab87a39e4d8 100644 --- a/src/osdc/ObjectCacher.cc +++ b/src/osdc/ObjectCacher.cc @@ -1333,10 +1333,8 @@ void ObjectCacher::purge(Object *ob) { dout(10) << "purge " << *ob << dendl; - for (map::iterator p = ob->data.begin(); - p != ob->data.end(); - p++) { - BufferHead *bh = p->second; + while (!ob->data.empty()) { + BufferHead *bh = ob->data.begin()->second; if (!bh->is_clean()) dout(0) << "purge forcibly removing " << *ob << " " << *bh << dendl; bh_remove(ob, bh);