summaryrefslogtreecommitdiff
path: root/src/servers.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/servers.cpp')
-rw-r--r--src/servers.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/servers.cpp b/src/servers.cpp
index a3403fc45..7699e64ca 100644
--- a/src/servers.cpp
+++ b/src/servers.cpp
@@ -368,11 +368,12 @@ const Anope::string Servers::TS6_UID_Retrieve()
static Anope::string current_uid = "AAAAAA";
- while (User::Find(Me->GetSID() + current_uid) != NULL)
+ do
{
int current_len = current_uid.length() - 1;
while (current_len >= 0 && nextID(current_uid[current_len--]) == 'A');
}
+ while (User::Find(Me->GetSID() + current_uid) != NULL);
return Me->GetSID() + current_uid;
}
@@ -386,11 +387,12 @@ const Anope::string Servers::TS6_SID_Retrieve()
if (current_sid.empty())
current_sid = "00A";
- while (Server::Find(current_sid) != NULL)
+ do
{
int current_len = current_sid.length() - 1;
while (current_len >= 0 && nextID(current_sid[current_len--]) == 'A');
}
+ while (Server::Find(current_sid) != NULL);
return current_sid;
}