diff --git a/rust/hg-core/src/revlog/revlog.rs b/rust/hg-core/src/revlog/revlog.rs --- a/rust/hg-core/src/revlog/revlog.rs +++ b/rust/hg-core/src/revlog/revlog.rs @@ -96,7 +96,7 @@ for rev in (0..self.len() as Revision).rev() { let index_entry = self.index.get_entry(rev).ok_or(RevlogError::Corrupted)?; - if node == index_entry.hash() { + if index_entry.hash().starts_with(node) { return Ok(rev); } } diff --git a/tests/test-rhg.t b/tests/test-rhg.t --- a/tests/test-rhg.t +++ b/tests/test-rhg.t @@ -130,11 +130,10 @@ summary: add original $ rhg files -r 41263439dc17 - abort: invalid revision identifier 41263439dc17 - [255] + copy_of_original + original $ rhg cat -r 41263439dc17 original - abort: invalid revision identifier 41263439dc17 - [255] + original content Requirements $ rhg debugrequirements