diff --git a/rust/hg-core/src/revlog/index.rs b/rust/hg-core/src/revlog/index.rs
--- a/rust/hg-core/src/revlog/index.rs
+++ b/rust/hg-core/src/revlog/index.rs
@@ -403,30 +403,33 @@ impl Index {
/// Return number of entries of the revlog index.
pub fn len(&self) -> usize {
- if let Some(offsets) = &*self.get_offsets() {
- offsets.len()
+ if self.is_inline() {
+ (*self.get_offsets())
+ .as_ref()
+ .expect("inline should have offsets")
+ .len()
} else {
self.bytes.len() / INDEX_ENTRY_SIZE
}
}
pub fn get_offsets(&self) -> RwLockReadGuard