rust/hg-core/src/revlog/mod.rs
changeset 50976 9929c8a73488
parent 50975 3aca98a35727
child 50977 1928b770e3e7
equal deleted inserted replaced
50975:3aca98a35727 50976:9929c8a73488
   535         // generaldelta. See the doc on `ENTRY_DELTA_BASE` in
   535         // generaldelta. See the doc on `ENTRY_DELTA_BASE` in
   536         // `mercurial/revlogutils/constants.py` and the code in
   536         // `mercurial/revlogutils/constants.py` and the code in
   537         // [_chaininfo] and in [index_deltachain].
   537         // [_chaininfo] and in [index_deltachain].
   538         let uses_generaldelta = self.revlog.index.uses_generaldelta();
   538         let uses_generaldelta = self.revlog.index.uses_generaldelta();
   539         while let Some(base_rev) = entry.base_rev_or_base_of_delta_chain {
   539         while let Some(base_rev) = entry.base_rev_or_base_of_delta_chain {
   540             let base_rev = if uses_generaldelta {
   540             entry = if uses_generaldelta {
   541                 base_rev
   541                 delta_chain.push(entry);
       
   542                 self.revlog.get_entry_internal(base_rev)?
   542             } else {
   543             } else {
   543                 entry.rev - 1
   544                 let base_rev = entry.rev - 1;
       
   545                 delta_chain.push(entry);
       
   546                 self.revlog.get_entry_internal(base_rev)?
   544             };
   547             };
   545             delta_chain.push(entry);
       
   546             entry = self.revlog.get_entry_internal(base_rev)?;
       
   547         }
   548         }
   548 
   549 
   549         let data = if delta_chain.is_empty() {
   550         let data = if delta_chain.is_empty() {
   550             entry.data_chunk()?
   551             entry.data_chunk()?
   551         } else {
   552         } else {