summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenjamin Peterson <benjamin@python.org>2016-12-28 20:02:35 -0800
committerBenjamin Peterson <benjamin@python.org>2016-12-28 20:02:35 -0800
commitacc2f74ca991f6579f5b9055dfe885b9a8af4645 (patch)
treee81403eab8acdd2c64d7c5369147fd34e17213bb
parent4b1e98b0af68ee80a37618ad599ead194f179cf1 (diff)
downloadcpython-git-acc2f74ca991f6579f5b9055dfe885b9a8af4645.tar.gz
fix error check, so that Random.seed actually uses OS randomness (closes #29085)
-rw-r--r--Misc/NEWS3
-rw-r--r--Modules/_randommodule.c2
2 files changed, 4 insertions, 1 deletions
diff --git a/Misc/NEWS b/Misc/NEWS
index 1112257a28..3436c0a52f 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -40,6 +40,9 @@ Core and Builtins
Library
-------
+- Issue #29085: Allow random.Random.seed() to use high quality OS randomness
+ rather than the pid and time.
+
- Issue #29079: Prevent infinite loop in pathlib.resolve() on Windows
- Issue #13051: Fixed recursion errors in large or resized
diff --git a/Modules/_randommodule.c b/Modules/_randommodule.c
index 63759d5562..0d3282db8f 100644
--- a/Modules/_randommodule.c
+++ b/Modules/_randommodule.c
@@ -245,7 +245,7 @@ random_seed(RandomObject *self, PyObject *args)
return NULL;
if (arg == NULL || arg == Py_None) {
- if (random_seed_urandom(self) >= 0) {
+ if (random_seed_urandom(self) < 0) {
PyErr_Clear();
/* Reading system entropy failed, fall back on the worst entropy: