# HG changeset patch # User Pierre-Yves David # Date 1584023027 -3600 # Node ID 864e9534d3d4f984e9c50a40e812e844816847bc # Parent daf083140b5b8a95b8388a3e4844f7ef259b2391 cext-index: propagate inline_scan error in `index_deref` Before this change, revlog index corruption could be silently ignored in some situation. Differential Revision: https://phab.mercurial-scm.org/D8276 diff -r daf083140b5b -r 864e9534d3d4 mercurial/cext/revlog.c --- a/mercurial/cext/revlog.c Thu Mar 12 18:53:37 2020 +0100 +++ b/mercurial/cext/revlog.c Thu Mar 12 15:23:47 2020 +0100 @@ -157,7 +157,10 @@ sizeof(*self->offsets)); if (self->offsets == NULL) return (const char *)PyErr_NoMemory(); - inline_scan(self, self->offsets); + Py_ssize_t ret = inline_scan(self, self->offsets); + if (ret == -1) { + return NULL; + }; } return self->offsets[pos]; }