lucko / commodore

Utility for using Minecraft's 1.13 'brigadier' library in Bukkit plugins.
MIT License
176 stars 15 forks source link

StackOverflow when used in the /execute command #11

Open nicegamer7 opened 4 years ago

nicegamer7 commented 4 years ago

If you type a command like: /execute as <your username here> run lp group

then you add a space to get tab completions, you get this stacktrace:

[00:21:23 ERROR]: Exception when test attempted to tab complete execute as test run lp group
org.bukkit.command.CommandException: Unhandled exception executing tab-completer for 'execute as test run lp group ' in org.bukkit.craftbukkit.v1_15_R1.command.VanillaCommandWrapper(execute)
        at org.bukkit.command.SimpleCommandMap.tabComplete(SimpleCommandMap.java:250) ~[patched_1.15.2.jar:git-Paper-143]

        at org.bukkit.craftbukkit.v1_15_R1.CraftServer.tabCompleteCommand(CraftServer.java:1757) ~[patched_1.15.2.jar:git-Paper-143]
        at org.bukkit.craftbukkit.v1_15_R1.CraftServer.tabComplete(CraftServer.java:1729) ~[patched_1.15.2.jar:git-Paper-143]
        at org.bukkit.craftbukkit.v1_15_R1.command.BukkitCommandWrapper.getSuggestions(BukkitCommandWrapper.java:49) ~[patched_1.15.2.jar:git-Paper-143]
        at com.mojang.brigadier.tree.ArgumentCommandNode.listSuggestions(ArgumentCommandNode.java:71) ~[patched_1.15.2.jar:git-Paper-143]
        at com.mojang.brigadier.CommandDispatcher.getCompletionSuggestions(CommandDispatcher.java:596) ~[patched_1.15.2.jar:git-Paper-143]
        at com.mojang.brigadier.CommandDispatcher.getCompletionSuggestions(CommandDispatcher.java:579) ~[patched_1.15.2.jar:git-Paper-143]
        at org.bukkit.craftbukkit.v1_15_R1.command.VanillaCommandWrapper.tabComplete(VanillaCommandWrapper.java:59) ~[patched_1.15.2.jar:git-Paper-143]
        at org.bukkit.command.SimpleCommandMap.tabComplete(SimpleCommandMap.java:244) ~[patched_1.15.2.jar:git-Paper-143]

        ... repeats a lot

Caused by: java.lang.StackOverflowError
        at com.google.gson.internal.LinkedTreeMap.<init>(LinkedTreeMap.java:60) ~[patched_1.15.2.jar:git-Paper-143]
        at com.google.gson.JsonObject.<init>(JsonObject.java:33) ~[patched_1.15.2.jar:git-Paper-143]
        at net.minecraft.server.v1_15_R1.IChatBaseComponent$ChatSerializer.serialize(IChatBaseComponent.java:345) ~[patched_1.15.2.jar:git-Paper-143]
        at net.minecraft.server.v1_15_R1.IChatBaseComponent$ChatSerializer.serialize(IChatBaseComponent.java:184) ~[patched_1.15.2.jar:git-Paper-143]
        at com.google.gson.internal.bind.TreeTypeAdapter.write(TreeTypeAdapter.java:81) ~[patched_1.15.2.jar:git-Paper-143]
        at com.google.gson.Gson.toJson(Gson.java:669) ~[patched_1.15.2.jar:git-Paper-143]
        at com.google.gson.Gson.toJson(Gson.java:648) ~[patched_1.15.2.jar:git-Paper-143]
        at com.google.gson.Gson.toJson(Gson.java:603) ~[patched_1.15.2.jar:git-Paper-143]
        at com.google.gson.Gson.toJson(Gson.java:583) ~[patched_1.15.2.jar:git-Paper-143]
        at net.minecraft.server.v1_15_R1.IChatBaseComponent$ChatSerializer.a(IChatBaseComponent.java:435) ~[patched_1.15.2.jar:git-Paper-143]
        at net.minecraft.server.v1_15_R1.Entity.bS(Entity.java:2886) ~[patched_1.15.2.jar:git-Paper-143]
        at net.minecraft.server.v1_15_R1.EntityHuman.lambda$c$5(EntityHuman.java:2000) ~[patched_1.15.2.jar:git-Paper-143]
        at net.minecraft.server.v1_15_R1.IChatBaseComponent.a(IChatBaseComponent.java:131) ~[patched_1.15.2.jar:git-Paper-143]
        at net.minecraft.server.v1_15_R1.EntityHuman.c(EntityHuman.java:1999) ~[patched_1.15.2.jar:git-Paper-143]
        at net.minecraft.server.v1_15_R1.EntityHuman.getScoreboardDisplayName(EntityHuman.java:1989) ~[patched_1.15.2.jar:git-Paper-143]
        at net.minecraft.server.v1_15_R1.Entity.getCommandListener(Entity.java:3167) ~[patched_1.15.2.jar:git-Paper-143]
        at org.bukkit.craftbukkit.v1_15_R1.command.VanillaCommandWrapper.getListener(VanillaCommandWrapper.java:68) ~[patched_1.15.2.jar:git-Paper-143]
        at org.bukkit.craftbukkit.v1_15_R1.command.VanillaCommandWrapper.tabComplete(VanillaCommandWrapper.java:55) ~[patched_1.15.2.jar:git-Paper-143]

        at org.bukkit.command.SimpleCommandMap.tabComplete(SimpleCommandMap.java:244) ~[patched_1.15.2.jar:git-Paper-143]
        at org.bukkit.craftbukkit.v1_15_R1.CraftServer.tabCompleteCommand(CraftServer.java:1757) ~[patched_1.15.2.jar:git-Paper-143]
        at org.bukkit.craftbukkit.v1_15_R1.CraftServer.tabComplete(CraftServer.java:1729) ~[patched_1.15.2.jar:git-Paper-143]
        at org.bukkit.craftbukkit.v1_15_R1.command.BukkitCommandWrapper.getSuggestions(BukkitCommandWrapper.java:49) ~[patched_1.15.2.jar:git-Paper-143]
        at com.mojang.brigadier.tree.ArgumentCommandNode.listSuggestions(ArgumentCommandNode.java:71) ~[patched_1.15.2.jar:git-Paper-143]
        at com.mojang.brigadier.CommandDispatcher.getCompletionSuggestions(CommandDispatcher.java:596) ~[patched_1.15.2.jar:git-Paper-143]
        at com.mojang.brigadier.CommandDispatcher.getCompletionSuggestions(CommandDispatcher.java:579) ~[patched_1.15.2.jar:git-Paper-143]
        at org.bukkit.craftbukkit.v1_15_R1.command.VanillaCommandWrapper.tabComplete(VanillaCommandWrapper.java:59) ~[patched_1.15.2.jar:git-Paper-143]

        ... repeats a lot
lucko commented 2 years ago

Might be fixed by 7bbcbe4f4722d5b670a074a0995bf24633d03885

could you re-test?