X-Git-Url: https://code.citadel.org/?p=citadel.git;a=blobdiff_plain;f=citadel%2Fmsgbase.c;h=2609d1d1da7b08bc7a0ed816a48d531a3961a1bb;hp=c583263eb4ebc19220aa72a3660637dcff0ca1b6;hb=c855d497545dad80942a194624c111a54cd1fdc7;hpb=7cced4381b0497cf3d99a489bbb1a4f5375ded32 diff --git a/citadel/msgbase.c b/citadel/msgbase.c index c583263eb..2609d1d1d 100644 --- a/citadel/msgbase.c +++ b/citadel/msgbase.c @@ -1239,26 +1239,28 @@ int is_valid_message(struct CtdlMessage *msg) { return 1; } +void CtdlFreeMessageContents(struct CtdlMessage *msg) +{ + int i; + for (i = 0; i < 256; ++i) + if (msg->cm_fields[i] != NULL) { + free(msg->cm_fields[i]); + } + + msg->cm_magic = 0; /* just in case */ +} /* * 'Destructor' for struct CtdlMessage */ void CtdlFreeMessage(struct CtdlMessage *msg) { - int i; - if (is_valid_message(msg) == 0) { if (msg != NULL) free (msg); return; } - - for (i = 0; i < 256; ++i) - if (msg->cm_fields[i] != NULL) { - free(msg->cm_fields[i]); - } - - msg->cm_magic = 0; /* just in case */ + CtdlFreeMessageContents(msg); free(msg); }