Author: Alex Gaynor <alex.gay...@gmail.com>
Branch: stdlib-2.7.11
Changeset: r83192:29e976bd194a
Date: 2016-03-20 10:51 -0400
http://bitbucket.org/pypy/pypy/changeset/29e976bd194a/

Log:    Check an error case in random

diff --git a/pypy/module/_random/interp_random.py 
b/pypy/module/_random/interp_random.py
--- a/pypy/module/_random/interp_random.py
+++ b/pypy/module/_random/interp_random.py
@@ -75,7 +75,10 @@
                 w_item = space.add(w_item, w_add)
             self._rnd.state[i] = space.uint_w(w_item)
         w_item = space.getitem(w_state, space.newint(rrandom.N))
-        self._rnd.index = space.int_w(w_item)
+        index = space.int_w(w_item)
+        if index < 0 or index > rrandom.N:
+            raise OperationError(space.w_ValueError, "invalid state")
+        self._rnd.index = index
 
     def jumpahead(self, space, w_n):
         if space.isinstance_w(w_n, space.w_long):
_______________________________________________
pypy-commit mailing list
pypy-commit@python.org
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to