Packfile negotiation needs to access the odb in order to figure out `have`s, which can fail.
Showing the changes to git-protocol/src/fetch/function.rs (1 of 5 files). Show all
Unified · Split
| @@ -164,7 +164,7 @@ where · 163 unmodified lines | |||
| 164 | progress.step(); | 164 | progress.step(); |
| 165 | progress.set_name(format!("negotiate (round {})", round)); | 165 | progress.set_name(format!("negotiate (round {})", round)); |
| 166 | round += 1; | 166 | round += 1; |
| 167 | let action = delegate.negotiate(&parsed_refs, &mut arguments, previous_response.as_ref()); | 167 | let action = delegate.negotiate(&parsed_refs, &mut arguments, previous_response.as_ref())?; |
| 168 | let mut reader = arguments.send(&mut transport, action == Action::Cancel).await?; | 168 | let mut reader = arguments.send(&mut transport, action == Action::Cancel).await?; |
| 169 | if sideband_all { | 169 | if sideband_all { |
| 170 | setup_remote_progress(&mut progress, &mut reader); | 170 | setup_remote_progress(&mut progress, &mut reader); |