Fix stackoverflow by converting TradeLogs to Strings on write #63
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is totally untested as I wasn't able to pull the PluginBase dependency easily (#57), but should fix #60 and fix #62 if I didn't mess anything up.
I believe the root of the stackoverflow has something to do with ItemStack not being serializable (
org.bukkit.configuration.serialization.ConfigurationSerializable
!=java.io.Serializable
), so I've switched to using Strings.I'm making an assumption in this patch that there shouldn't be a reason we would create a TradeLog from the string that is written to the file since that seems like overkill for basic logging. If that's a bad assumption, we should implement a better TypeAdapter that will handle the serialization of ItemStacks.
This small fix took me way longer than it should have, so if it works you owe me a coffee! 😆
Always happy to help!