From 45a00e819d6cab219ffb7e5399ed370b710b7b12 Mon Sep 17 00:00:00 2001 From: Martin von Zweigbergk Date: Sun, 16 Jan 2022 23:05:20 -0800 Subject: [PATCH] working_copy: pass only a `TreeId` to `LockedWorkingCopy::check_out()` It only needs a `TreeId`. --- lib/src/working_copy.rs | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/lib/src/working_copy.rs b/lib/src/working_copy.rs index f8705acd9..72f1a15be 100644 --- a/lib/src/working_copy.rs +++ b/lib/src/working_copy.rs @@ -839,7 +839,7 @@ impl WorkingCopy { ) -> Result { let mut locked_wc = self.start_mutation(); let new_commit_id = new_commit.id().clone(); - let stats = match locked_wc.check_out(old_commit_id, new_commit) { + let stats = match locked_wc.check_out(old_commit_id, new_commit.tree_id().clone()) { Err(CheckoutError::ConcurrentCheckout) => { locked_wc.discard(); return Err(CheckoutError::ConcurrentCheckout); @@ -874,9 +874,8 @@ impl LockedWorkingCopy<'_> { pub fn check_out( &mut self, old_commit_id: Option<&CommitId>, - new_commit: Commit, + new_tree_id: TreeId, ) -> Result { - assert!(new_commit.is_open()); // TODO: Write a "pending_checkout" file with the old and new TreeIds so we can // continue an interrupted checkout if we find such a file. @@ -894,7 +893,7 @@ impl LockedWorkingCopy<'_> { .tree_state() .as_mut() .unwrap() - .check_out(new_commit.tree().id().clone())?; + .check_out(new_tree_id)?; Ok(stats) }