changeset 49056:890db1c97218

revlog: fix index_fast_rank (wip) As far as I can tell, rank is stored as a 32-bit big endian value, I'm not sure how grabbing the first byte can possibly work. I assume there's no test coverage here? cc @pacien Fixes: https://www.mercurial-scm.org/repo/hg/rev/e633e660158f Differential Revision: https://phab.mercurial-scm.org/D12376
author Julien Cristau <jcristau@debian.org>
date Tue, 15 Mar 2022 10:36:28 +0100
parents f64bbba2ee59
children 4057563ebc6b
files mercurial/cext/revlog.c
diffstat 1 files changed, 1 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/cext/revlog.c	Thu Mar 17 11:00:05 2022 +0100
+++ b/mercurial/cext/revlog.c	Tue Mar 15 10:36:28 2022 +0100
@@ -588,7 +588,7 @@
 		return 0; /* convention */
 	}
 
-	return *(index_deref(self, pos) + entry_cl2_offset_rank);
+	return getbe32(index_deref(self, pos) + entry_cl2_offset_rank);
 }
 
 /*