From c3f62ccb901919407d8d0d2ffb495ebc6db535ed Mon Sep 17 00:00:00 2001 From: heck Date: Sun, 25 Apr 2021 00:33:49 +0200 Subject: [PATCH] Fix: listmanager_dummy - member_add() and member_remove() Throw DoesNotExistException if list does not exist --- src/listmanager_dummy.cc | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/listmanager_dummy.cc b/src/listmanager_dummy.cc index 5014231..59c1d13 100644 --- a/src/listmanager_dummy.cc +++ b/src/listmanager_dummy.cc @@ -143,6 +143,12 @@ namespace pEp { { pEpLogClass( "member_add(addr_list: \"" + addr_list + "\", addr_member: \"" + addr_member + "\")"); + if (!list_exists(addr_list)) { + DoesNotExistException e{ "member_add(addr_list: \"" + addr_list + "\", addr_member: \"" + + addr_member + "\") - list does not exist" }; + throw e; + } + if (member_exists(addr_list, addr_member)) { AlreadyExistsException e{ "member_add(addr_list: \"" + addr_list + "\", addr_member: \"" + addr_member + "\") - member already exists" }; @@ -165,6 +171,13 @@ namespace pEp { { pEpLogClass( "member_remove(addr_list: \"" + addr_list + "\", addr_member: '\"" + addr_member + "\")"); + if (!list_exists(addr_list)) { + DoesNotExistException e{ "member_remove(addr_list: \"" + addr_list + + "\", addr_member: '\"" + addr_member + + "\") - list does not exist" }; + throw e; + } + if (!member_exists(addr_list, addr_member)) { DoesNotExistException e{ "member_remove(addr_list: \"" + addr_list + "\", addr_member: '\"" + addr_member +