menumanager: true band aid fix (#1430)
This commit is contained in:
@@ -34,6 +34,7 @@ import java.util.Arrays;
|
|||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.Comparator;
|
import java.util.Comparator;
|
||||||
|
import java.util.ConcurrentModificationException;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
import java.util.LinkedHashMap;
|
import java.util.LinkedHashMap;
|
||||||
@@ -47,9 +48,9 @@ import javax.inject.Singleton;
|
|||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import net.runelite.api.Client;
|
import net.runelite.api.Client;
|
||||||
|
import net.runelite.api.MenuEntry;
|
||||||
import net.runelite.api.MenuOpcode;
|
import net.runelite.api.MenuOpcode;
|
||||||
import static net.runelite.api.MenuOpcode.MENU_ACTION_DEPRIORITIZE_OFFSET;
|
import static net.runelite.api.MenuOpcode.MENU_ACTION_DEPRIORITIZE_OFFSET;
|
||||||
import net.runelite.api.MenuEntry;
|
|
||||||
import net.runelite.api.NPCDefinition;
|
import net.runelite.api.NPCDefinition;
|
||||||
import net.runelite.api.events.BeforeRender;
|
import net.runelite.api.events.BeforeRender;
|
||||||
import net.runelite.api.events.MenuEntryAdded;
|
import net.runelite.api.events.MenuEntryAdded;
|
||||||
@@ -807,7 +808,9 @@ public class MenuManager
|
|||||||
private void indexPriorityEntries(MenuEntry[] entries, int menuOptionCount)
|
private void indexPriorityEntries(MenuEntry[] entries, int menuOptionCount)
|
||||||
{
|
{
|
||||||
// create a array of priority entries so we can sort those
|
// create a array of priority entries so we can sort those
|
||||||
SortMapping[] prios = new SortMapping[entries.length - menuOptionCount];
|
try
|
||||||
|
{
|
||||||
|
final SortMapping[] prios = new SortMapping[entries.length - menuOptionCount];
|
||||||
|
|
||||||
int prioAmt = 0;
|
int prioAmt = 0;
|
||||||
for (int i = 0; i < menuOptionCount; i++)
|
for (int i = 0; i < menuOptionCount; i++)
|
||||||
@@ -844,6 +847,11 @@ public class MenuManager
|
|||||||
|
|
||||||
firstEntry = entries[menuOptionCount + i - 1];
|
firstEntry = entries[menuOptionCount + i - 1];
|
||||||
}
|
}
|
||||||
|
catch (ConcurrentModificationException ignored)
|
||||||
|
{
|
||||||
|
//true band aid :)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void indexSwapEntries(MenuEntry[] entries, int menuOptionCount)
|
private void indexSwapEntries(MenuEntry[] entries, int menuOptionCount)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user