diff --git a/WebHostLib/customserver.py b/WebHostLib/customserver.py index 44271d7069..3f31d92116 100644 --- a/WebHostLib/customserver.py +++ b/WebHostLib/customserver.py @@ -261,14 +261,13 @@ def get_active_net_connections() -> typing.Iterable[int]: )) -_last_used_ports = (frozenset(get_active_net_connections()), round(time.time() / 900)) def get_used_ports(): - global _last_used_ports - t_hash = round(time.time() / 900) - if _last_used_ports[1] != t_hash: - _last_used_ports = (frozenset(get_active_net_connections()), t_hash) + last_used_ports: tuple[frozenset[int], int] = getattr(get_used_ports, "last", None) + t_hash = time.time() // 900 + if last_used_ports is None or last_used_ports[1] != t_hash: + setattr(get_used_ports, "last", (frozenset(get_active_net_connections()), t_hash)) - return _last_used_ports[0] + return last_used_ports[0] def create_socket_from_port_list(available_ports: typing.Iterable[int], host: str) -> socket.socket | None: