diff --git a/app/threads/server/functions.js b/app/threads/server/functions.js index 2a8fe49ee51..647542e9b53 100644 --- a/app/threads/server/functions.js +++ b/app/threads/server/functions.js @@ -5,7 +5,9 @@ export const reply = ({ tmid }, { rid, ts, u, editedAt }, parentMessage) => { return false; } - Messages.updateRepliesByThreadId(tmid, [parentMessage.u._id, u._id], ts); + const addToReplies = Array.isArray(parentMessage.replies) && parentMessage.replies.length ? [u._id] : [parentMessage.u._id, u._id]; + + Messages.updateRepliesByThreadId(tmid, addToReplies, ts); const replies = Messages.getThreadFollowsByThreadId(tmid); diff --git a/app/threads/server/hooks/aftersavemessage.js b/app/threads/server/hooks/aftersavemessage.js index dd9bcf03c46..a9348619cae 100644 --- a/app/threads/server/hooks/aftersavemessage.js +++ b/app/threads/server/hooks/aftersavemessage.js @@ -47,7 +47,6 @@ const processThreads = (message, room) => { } const replies = [ - parentMessage.u._id, ...parentMessage.replies || [], ].filter((userId) => userId !== message.u._id);