summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormichael <michael@82007160-df01-0410-b94d-b575c5fd34c7>2014-05-22 18:57:16 +0000
committermichael <michael@82007160-df01-0410-b94d-b575c5fd34c7>2014-05-22 18:57:16 +0000
commit7798b661e93c895101b6875e0d7b40f88d35ab06 (patch)
tree5532ec4494181eb7fb7ae090ee2384cd2a30847e
parent5467ff07847cc9c3efa0fd550b9ea6444b22a941 (diff)
- parse.c:mod_del_cmd(): make sure the command actually exists in the trie before
attempting to remove it. We could end up in a corrupted trie otherwise. git-svn-id: svn://svn.ircd-hybrid.org/svnroot/ircd-hybrid/branches/8.1.x@3616 82007160-df01-0410-b94d-b575c5fd34c7
-rw-r--r--src/parse.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/parse.c b/src/parse.c
index bf94a92..8e6362d 100644
--- a/src/parse.c
+++ b/src/parse.c
@@ -491,6 +491,9 @@ mod_del_cmd(struct Message *msg)
{
assert(msg && msg->cmd);
+ if (!msg_tree_parse(msg->cmd))
+ return;
+
del_msg_element(&msg_tree, msg->cmd);
}