From a377a48ecb0193cb5fd4aa3bec490eec29f10142 Mon Sep 17 00:00:00 2001 From: apathy Date: Thu, 7 Jul 2016 01:47:19 -0700 Subject: [PATCH] Ignore messages if the srcAvatar is on destAvatar's ignore list. --- src/protocol/SendInstantMessage.cpp | 4 ++++ src/protocol/SendPersistentMessage.cpp | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/src/protocol/SendInstantMessage.cpp b/src/protocol/SendInstantMessage.cpp index 2df2902..9475a94 100644 --- a/src/protocol/SendInstantMessage.cpp +++ b/src/protocol/SendInstantMessage.cpp @@ -24,5 +24,9 @@ SendInstantMessage::SendInstantMessage( throw ChatResultException(ChatResultCode::DESTAVATARDOESNTEXIST); } + if (destAvatar->IsIgnored(srcAvatar)) { + throw ChatResultException(ChatResultCode::IGNORING); + } + client->SendInstantMessageUpdate(srcAvatar, destAvatar, request.message, request.oob); } diff --git a/src/protocol/SendPersistentMessage.cpp b/src/protocol/SendPersistentMessage.cpp index 2856848..2b437c6 100644 --- a/src/protocol/SendPersistentMessage.cpp +++ b/src/protocol/SendPersistentMessage.cpp @@ -26,6 +26,10 @@ SendPersistentMessage::SendPersistentMessage(GatewayClient * client, const Reque throw ChatResultException{ChatResultCode::SRCAVATARDOESNTEXIST}; } + if (destAvatar->IsIgnored(srcAvatar)) { + throw ChatResultException(ChatResultCode::IGNORING); + } + message.header.fromName = srcAvatar->GetName(); message.header.fromAddress = srcAvatar->GetAddress(); } else {