diff --git a/rust/hg-cpython/src/revlog.rs b/rust/hg-cpython/src/revlog.rs index 952e3cd7568f503425fd343cce04a84b6d09c801_cnVzdC9oZy1jcHl0aG9uL3NyYy9yZXZsb2cucnM=..b67cd0d0e97627a6993c9969dfd0563fbb68c9fc_cnVzdC9oZy1jcHl0aG9uL3NyYy9yZXZsb2cucnM= 100644 --- a/rust/hg-cpython/src/revlog.rs +++ b/rust/hg-cpython/src/revlog.rs @@ -324,6 +324,9 @@ Ok(rev >= -1 && rev < self.len(py)? as BaseRevision) } Err(_) => { - cindex.inner().call_method( + let item_bytes: PyBytes = item.extract(py)?; + let rust_res = self.has_node(py, item_bytes)?; + + let c_res = cindex.inner().call_method( py, "has_node", @@ -328,4 +331,4 @@ py, "has_node", - PyTuple::new(py, &[item]), + PyTuple::new(py, &[item.clone_ref(py)]), None)? @@ -331,5 +334,8 @@ None)? - .extract(py) + .extract(py)?; + + assert_eq!(rust_res, c_res); + Ok(rust_res) } } }