Merge remote-tracking branch 'upstream/master' into runelite

# Conflicts:
#	cache-client/pom.xml
#	cache-updater/pom.xml
#	cache/pom.xml
#	http-api/pom.xml
#	http-service/pom.xml
#	pom.xml
#	runelite-api/pom.xml
#	runelite-api/src/main/java/net/runelite/api/Client.java
#	runelite-api/src/main/java/net/runelite/api/FarmingTrackerTest.java
#	runelite-client/pom.xml
#	runelite-client/src/main/java/net/runelite/client/plugins/menuentryswapper/MenuEntrySwapperConfig.java
#	runelite-client/src/test/java/net/runelite/client/chat/ChatMessageManagerTest.java
#	runelite-client/src/test/java/net/runelite/client/plugins/cluescrolls/ClueScrollPluginTest.java
#	runelite-client/src/test/java/net/runelite/client/plugins/emojis/EmojiPluginTest.java
#	runelite-client/src/test/java/net/runelite/client/plugins/grounditems/GroundItemsPluginTest.java
#	runelite-client/src/test/java/net/runelite/client/plugins/idlenotifier/IdleNotifierPluginTest.java
#	runelite-script-assembler-plugin/pom.xml
This commit is contained in:
ThatGamerBlue
2021-02-14 00:31:56 +00:00
81 changed files with 3354 additions and 657 deletions

View File

@@ -27,13 +27,26 @@ package net.runelite.http.api.gson;
import com.google.gson.ExclusionStrategy;
import com.google.gson.FieldAttributes;
import java.lang.reflect.Modifier;
import java.util.HashSet;
import java.util.Set;
public class IllegalReflectionExclusion implements ExclusionStrategy
{
private static final Set<ClassLoader> PRIVATE_CLASSLOADERS = new HashSet<>();
static
{
for (ClassLoader cl = ClassLoader.getSystemClassLoader(); cl != null; )
{
cl = cl.getParent();
PRIVATE_CLASSLOADERS.add(cl);
}
}
@Override
public boolean shouldSkipField(FieldAttributes f)
{
if (f.getDeclaringClass().getName().startsWith("net.runelite"))
if (!PRIVATE_CLASSLOADERS.contains(f.getDeclaringClass().getClassLoader()))
{
return false;
}