From b1484b0c95a1120689509087a6de868e9796f4e7 Mon Sep 17 00:00:00 2001 From: imndx Date: Mon, 6 Jul 2020 16:02:11 +0800 Subject: [PATCH] fix recall message issue --- .../java/io/moquette/persistence/MemoryMessagesStore.java | 4 ++-- 1 file changed, 2 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 55b0a323..3a7164b1 100755 --- a/broker/src/main/java/io/moquette/persistence/MemoryMessagesStore.java +++ b/broker/src/main/java/io/moquette/persistence/MemoryMessagesStore.java @@ -1469,8 +1469,8 @@ public class MemoryMessagesStore implements IMessagesStore { } String searchContent = message.getContent().getSearchableContent() == null ? "" : message.getContent().getSearchableContent(); - String cont = message.getContent().getContent() == null ? "" : message.getContent().getContent(); - String extra = message.getContent().getExtra() == null ? "" : message.getContent().getExtra(); + String cont = message.getContent().getContent() == null ? "" : message.getContent().getContent().replace("\"", "\\\""); + String extra = message.getContent().getExtra() == null ? "" : message.getContent().getExtra().replace("\"", "\\\""); String recalledContent = "{\"s\":\"" + message.getFromUser() + "\",\"ts\":" + message.getServerTimestamp() + ",\"t\":" + message.getContent().getType() + ",\"sc\":\"" + searchContent + "\",\"c\":\"" + cont + "\",\"e\":\"" + extra + "\"}"; message = message.toBuilder().setContent(message.getContent().toBuilder().setContent(operatorId).setType(80).clearSearchableContent().setData(ByteString.copyFrom(String.valueOf(messageUid).getBytes())).setExtra(recalledContent).build()).build();