From af58bf91a49e66d7d7fdbddacaede56b0ae9a3f0 Mon Sep 17 00:00:00 2001 From: heavyrian2012 Date: Thu, 29 Sep 2022 08:36:01 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8D=95=E8=81=8A=E6=B6=88=E6=81=AF=E5=8F=AF?= =?UTF-8?q?=E4=BB=A5=E5=AE=9A=E5=90=91=E5=8F=91=E9=80=81=EF=BC=8C=E5=8F=AA?= =?UTF-8?q?=E5=8F=91=E9=80=81=E7=BB=99=E5=85=B6=E4=B8=AD=E4=B8=80=E4=B8=AA?= =?UTF-8?q?=E7=94=A8=E6=88=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../moquette/persistence/MemoryMessagesStore.java | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/broker/src/main/java/io/moquette/persistence/MemoryMessagesStore.java b/broker/src/main/java/io/moquette/persistence/MemoryMessagesStore.java index 54e2803b..e9cb789d 100755 --- a/broker/src/main/java/io/moquette/persistence/MemoryMessagesStore.java +++ b/broker/src/main/java/io/moquette/persistence/MemoryMessagesStore.java @@ -539,8 +539,17 @@ public class MemoryMessagesStore implements IMessagesStore { int pullType = ProtoConstants.PullType.Pull_Normal; if (type == ProtoConstants.ConversationType.ConversationType_Private) { - notifyReceivers.add(fromUser); - notifyReceivers.add(message.getConversation().getTarget()); + if(message.getToCount() > 0) { + if(message.getToList().contains(fromUser)) { + notifyReceivers.add(fromUser); + } + if(message.getToList().contains(message.getConversation().getTarget())) { + notifyReceivers.add(message.getConversation().getTarget()); + } + } else { + notifyReceivers.add(fromUser); + notifyReceivers.add(message.getConversation().getTarget()); + } pullType = ProtoConstants.PullType.Pull_Normal; } else if (type == ProtoConstants.ConversationType.ConversationType_Group) { notifyReceivers.add(fromUser);