geforkt von Mirrors/Paper
5ae3895105
previous logic was super broken and did not truncate your currently typed part of the input from the suggestions.
37 Zeilen
1.7 KiB
Diff
37 Zeilen
1.7 KiB
Diff
From 87abc431c2c2e1ec2e3c5d1f2922455c784771a3 Mon Sep 17 00:00:00 2001
|
|
From: Aikar <aikar@aikar.co>
|
|
Date: Tue, 23 Oct 2018 20:25:05 -0400
|
|
Subject: [PATCH] Don't sleep after profile lookups if not needed
|
|
|
|
Mojang was sleeping even if we had no more requests to go after
|
|
the current one finished, resulting in 100ms lost per profile lookup
|
|
|
|
diff --git a/src/main/java/com/mojang/authlib/yggdrasil/YggdrasilGameProfileRepository.java b/src/main/java/com/mojang/authlib/yggdrasil/YggdrasilGameProfileRepository.java
|
|
index 71e48e87b..23f1447cf 100644
|
|
--- a/src/main/java/com/mojang/authlib/yggdrasil/YggdrasilGameProfileRepository.java
|
|
+++ b/src/main/java/com/mojang/authlib/yggdrasil/YggdrasilGameProfileRepository.java
|
|
@@ -42,6 +42,7 @@ public class YggdrasilGameProfileRepository implements GameProfileRepository {
|
|
}
|
|
|
|
final int page = 0;
|
|
+ boolean hasRequested = false; // Paper
|
|
|
|
for (final List<String> request : Iterables.partition(criteria, ENTRIES_PER_PAGE)) {
|
|
int failCount = 0;
|
|
@@ -67,6 +68,12 @@ public class YggdrasilGameProfileRepository implements GameProfileRepository {
|
|
LOGGER.debug("Couldn't find profile {}", name);
|
|
callback.onProfileLookupFailed(new GameProfile(null, name), new ProfileNotFoundException("Server did not find the requested profile"));
|
|
}
|
|
+ // Paper start
|
|
+ if (!hasRequested) {
|
|
+ hasRequested = true;
|
|
+ continue;
|
|
+ }
|
|
+ // Paper end
|
|
|
|
try {
|
|
Thread.sleep(DELAY_BETWEEN_PAGES);
|
|
--
|
|
2.20.1
|
|
|