diff --git a/ChangeLog.md b/ChangeLog.md
index 3cda728..c02f5bf 100644
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,3 +1,8 @@
+## 1.5.2
+
+*   Do not re-pick a known used (not-yet-returned) port when running stand alone
+    without a portserver.
+    
 ## 1.5.1
 
 *   When not using a portserver *(you really should)*, try the `bind(0)`
diff --git a/setup.cfg b/setup.cfg
index 63c1ac4..d3ad524 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -1,7 +1,7 @@
 # https://setuptools.readthedocs.io/en/latest/setuptools.html#configuring-setup-using-setup-cfg-files
 [metadata]
 name = portpicker
-version = 1.5.1b1
+version = 1.5.2
 maintainer = Google LLC
 maintainer_email = greg@krypto.org
 license = Apache 2.0
diff --git a/src/portpicker.py b/src/portpicker.py
index fc2825b..28c1971 100644
--- a/src/portpicker.py
+++ b/src/portpicker.py
@@ -205,7 +205,8 @@
         # Ask the OS for an unused port.
         port = bind(0, _PROTOS[0][0], _PROTOS[0][1])
         # Check if this port is unused on the other protocol.
-        if port and bind(port, _PROTOS[1][0], _PROTOS[1][1]):
+        if (port and port not in _random_ports and 
+            bind(port, _PROTOS[1][0], _PROTOS[1][1])):
             _random_ports.add(port)
             return port
 
@@ -213,7 +214,7 @@
     rng = random.Random()
     for _ in range(10):
         port = int(rng.randrange(15000, 25000))
-        if is_port_free(port):
+        if port not in _random_ports and is_port_free(port):
             _random_ports.add(port)
             return port
 
