3
0
Mirror von https://github.com/GeyserMC/Geyser.git synchronisiert 2024-10-03 08:21:06 +02:00

Fix NPE and API contract breakage for Component deserialization

Dieser Commit ist enthalten in:
Redned 2021-12-29 10:29:48 -06:00 committet von RednedEpic
Ursprung 8e774ea314
Commit c6c2ff99c3

Datei anzeigen

@ -31,7 +31,6 @@ import com.google.gson.JsonElement;
import net.kyori.adventure.text.Component; import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.serializer.gson.GsonComponentSerializer; import net.kyori.adventure.text.serializer.gson.GsonComponentSerializer;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.function.UnaryOperator; import java.util.function.UnaryOperator;
@ -62,9 +61,14 @@ public record GsonComponentSerializerWrapper(GsonComponentSerializer source) imp
} }
@Override @Override
public @Nullable Component deserialize(@NotNull String input) { public @NotNull Component deserialize(@NotNull String input) {
// See https://github.com/KyoriPowered/adventure/issues/447 // See https://github.com/KyoriPowered/adventure/issues/447
return this.serializer().fromJson(input, Component.class); Component component = this.serializer().fromJson(input, Component.class);
if (component == null) {
return Component.empty();
}
return component;
} }
@Override @Override