I suspect it has never, ever, ever been asked to delete anything that exists. Also neither it, nor MCDelMsg() below free() the set and msg structures. Found by Coverty SID:54