X-Git-Url: http://git.vrable.net/?a=blobdiff_plain;f=metadata.cc;fp=metadata.cc;h=c27278bccb14ce539064eb0d72de766e039de611;hb=1b39ce3ff11a0c7cc742dc3f1aae2161df7cc6ab;hp=f972b75999598e562c3ded4788b9b1550b12c47f;hpb=d3c10b747ecec0acc14863fc12db9661c3f88128;p=cumulus.git diff --git a/metadata.cc b/metadata.cc index f972b75..c27278b 100644 --- a/metadata.cc +++ b/metadata.cc @@ -269,6 +269,11 @@ void MetadataWriter::metadata_flush() ObjectReference indirect; for (list::iterator i = items.begin(); i != items.end(); ++i) { + // If indirectly referencing any other metadata logs, be sure those + // segments are properly referenced. + if (i->reused) + add_segment(i->ref.get_segment()); + // Write out an indirect reference to any previous objects which could // be reused if (!i->reused || !indirect.merge(i->ref)) {