chat: ensure queued messages are always cleared after adding
Mark queued message type as non null because addChatMessage will throw if it is. This was causing the client to get stuck trying to add the same broken message each loop.
This commit is contained in:
@@ -548,8 +548,14 @@ public class ChatMessageManager
|
|||||||
{
|
{
|
||||||
if (!queuedMessages.isEmpty())
|
if (!queuedMessages.isEmpty())
|
||||||
{
|
{
|
||||||
queuedMessages.forEach(this::add);
|
try
|
||||||
queuedMessages.clear();
|
{
|
||||||
|
queuedMessages.forEach(this::add);
|
||||||
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
queuedMessages.clear();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -26,12 +26,14 @@ package net.runelite.client.chat;
|
|||||||
|
|
||||||
import lombok.Builder;
|
import lombok.Builder;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import lombok.NonNull;
|
||||||
import net.runelite.api.ChatMessageType;
|
import net.runelite.api.ChatMessageType;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
@Builder
|
@Builder
|
||||||
public class QueuedMessage
|
public class QueuedMessage
|
||||||
{
|
{
|
||||||
|
@NonNull
|
||||||
private final ChatMessageType type;
|
private final ChatMessageType type;
|
||||||
private final String value;
|
private final String value;
|
||||||
private String name;
|
private String name;
|
||||||
|
|||||||
Reference in New Issue
Block a user