From 75506e8b7cc1b21fd10997e4e5d382c515558fa8 Mon Sep 17 00:00:00 2001 From: Antoine Pitrou Date: Mon, 20 Aug 2012 19:30:46 +0200 Subject: Issue #15726: Fix incorrect bounds checking in PyState_FindModule. Patch by Robin Schreiber. --- Misc/ACKS | 1 + Misc/NEWS | 3 +++ Python/pystate.c | 2 +- 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/Misc/ACKS b/Misc/ACKS index 2e72f22..0d851df 100644 --- a/Misc/ACKS +++ b/Misc/ACKS @@ -848,6 +848,7 @@ Ralf Schmitt Michael Schneider Peter Schneider-Kamp Arvin Schnell +Robin Schreiber Chad J. Schroeder Sam Schulenburg Stefan Schwarzer diff --git a/Misc/NEWS b/Misc/NEWS index 857a1615..74c168f 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -10,6 +10,9 @@ What's New in Python 3.2.4 Core and Builtins ----------------- +- Issue #15726: Fix incorrect bounds checking in PyState_FindModule. + Patch by Robin Schreiber. + - Issue #15604: Update uses of PyObject_IsTrue() to check for and handle errors correctly. Patch by Serhiy Storchaka. diff --git a/Python/pystate.c b/Python/pystate.c index 31b5423..1392331 100644 --- a/Python/pystate.c +++ b/Python/pystate.c @@ -248,7 +248,7 @@ PyState_FindModule(struct PyModuleDef* m) return NULL; if (state->modules_by_index == NULL) return NULL; - if (index > PyList_GET_SIZE(state->modules_by_index)) + if (index >= PyList_GET_SIZE(state->modules_by_index)) return NULL; res = PyList_GET_ITEM(state->modules_by_index, index); return res==Py_None ? NULL : res; -- cgit v0.12