com.mojang.{authlib,serialization}

This commit is contained in:
Noah van der Aa
2024-12-15 00:16:28 +01:00
parent 3fbf7aa159
commit 363d5bcf57
2 changed files with 4 additions and 4 deletions

View File

@@ -0,0 +1,23 @@
--- a/com/mojang/authlib/yggdrasil/YggdrasilGameProfileRepository.java
+++ b/com/mojang/authlib/yggdrasil/YggdrasilGameProfileRepository.java
@@ -44,6 +_,7 @@
.collect(Collectors.toSet());
final int page = 0;
+ boolean hasRequested = false; // Paper - Don't sleep after profile lookups if not needed
for (final List<String> request : Iterables.partition(criteria, ENTRIES_PER_PAGE)) {
final List<String> normalizedRequest = request.stream().map(YggdrasilGameProfileRepository::normalizeName).toList();
@@ -75,6 +_,12 @@
LOGGER.debug("Couldn't find profile {}", name);
callback.onProfileLookupFailed(name, new ProfileNotFoundException("Server did not find the requested profile"));
}
+ // Paper start - Don't sleep after profile lookups if not needed
+ if (!hasRequested) {
+ hasRequested = true;
+ continue;
+ }
+ // Paper end - Don't sleep after profile lookups if not needed
try {
Thread.sleep(DELAY_BETWEEN_PAGES);

View File

@@ -0,0 +1,19 @@
--- a/com/mojang/serialization/Dynamic.java
+++ b/com/mojang/serialization/Dynamic.java
@@ -19,6 +_,7 @@
@SuppressWarnings("unused")
public class Dynamic<T> extends DynamicLike<T> {
+ private static final boolean DEBUG_MISSING_KEYS = Boolean.getBoolean("Paper.debugDynamicMissingKeys"); // Paper - Perf: Skip toString on values like NBT
private final T value;
public Dynamic(final DynamicOps<T> ops) {
@@ -120,7 +_,7 @@
return new OptionalDynamic<>(ops, ops.getMap(value).flatMap(m -> {
final T value = m.get(key);
if (value == null) {
- return DataResult.error(() -> "key missing: " + key + " in " + this.value);
+ return DataResult.error(() -> DEBUG_MISSING_KEYS ? "key missing: " + key + " in " + this.value : "key missing: " + key); // Paper - Perf: Skip toString on values like NBT
}
return DataResult.success(new Dynamic<>(ops, value));
}));