From 82775c4764ed29d20b8e46b66171fef9920b6bc4 Mon Sep 17 00:00:00 2001 From: Dietmar Maurer Date: Fri, 19 Mar 2021 07:50:32 +0100 Subject: [PATCH] tape: make sure we only commit/write valid catalogs --- src/tape/media_catalog.rs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/tape/media_catalog.rs b/src/tape/media_catalog.rs index 766ee024..493e85fa 100644 --- a/src/tape/media_catalog.rs +++ b/src/tape/media_catalog.rs @@ -313,6 +313,9 @@ impl MediaCatalog { /// Conditionally commit if in pending data is large (> 1Mb) pub fn commit_if_large(&mut self) -> Result<(), Error> { + if self.current_archive.is_some() { + bail!("can't commit catalog in the middle of an chunk archive"); + } if self.pending.len() > 1024*1024 { self.commit()?; }