summaryrefslogtreecommitdiffstats
path: root/src/mds/CDir.cc
diff options
context:
space:
mode:
authorGreg Farnum <gregory.farnum@dreamhost.com>2011-09-19 23:09:44 +0200
committerGreg Farnum <gregory.farnum@dreamhost.com>2011-09-19 23:09:44 +0200
commit0ac898556f6d1c88131c541b94c46d99598e88fe (patch)
treefd5ca5539d8b4347105f7f5ee01204bb28fb3377 /src/mds/CDir.cc
parentMerge branch 'wip-flock' (diff)
downloadceph-0ac898556f6d1c88131c541b94c46d99598e88fe.tar.xz
ceph-0ac898556f6d1c88131c541b94c46d99598e88fe.zip
CDir: put delete with pop so we don't read free'd memory in output
Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
Diffstat (limited to '')
-rw-r--r--src/mds/CDir.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/mds/CDir.cc b/src/mds/CDir.cc
index 81a088bf303..73cf929a9f1 100644
--- a/src/mds/CDir.cc
+++ b/src/mds/CDir.cc
@@ -1199,8 +1199,8 @@ void CDir::pop_and_dirty_projected_fnode(LogSegment *ls)
dout(15) << "pop_and_dirty_projected_fnode " << projected_fnode.front()
<< " v" << projected_fnode.front()->version << dendl;
fnode = *projected_fnode.front();
- delete projected_fnode.front();
_mark_dirty(ls);
+ delete projected_fnode.front();
projected_fnode.pop_front();
}