Remove the object from the list upon destruction.

This commit is contained in:
Marcelo Roberto Jimenez 2010-10-21 08:29:15 -02:00
parent 224c07de81
commit 499753ba46

View File

@ -46,7 +46,7 @@
/******************************************************************************/
#define TEMPLATE_DESTRUCTOR_INT(MEMBER, TYPE) p->m_##MEMBER = 0;
#define TEMPLATE_DESTRUCTOR_BUFFER(MEMBER, TYPE) memset(&p->m_##MEMBER, 0, sizeof (TYPE));
#define TEMPLATE_DESTRUCTOR_LIST(MEMBER) memset(&p->m_##MEMBER, 0, sizeof (struct list_head));
#define TEMPLATE_DESTRUCTOR_LIST(MEMBER) list_del(&p->m_##MEMBER);
#define TEMPLATE_DESTRUCTOR_OBJECT(MEMBER, TYPE) TYPE##_delete(p->m_##MEMBER); p->m_##MEMBER = NULL;
#define TEMPLATE_DESTRUCTOR_STRING(MEMBER) UpnpString_delete(p->m_##MEMBER); p->m_##MEMBER = NULL;
#define TEMPLATE_DESTRUCTOR_DOMSTRING(MEMBER) p->m_##MEMBER = NULL;
@ -108,7 +108,7 @@ void CLASS##_add_to_list_##MEMBER(CLASS *p, struct list_head *head) \
\
void CLASS##_remove_from_list_##MEMBER(CLASS *p) \
{ \
list_del(&((struct S##CLASS *)p)->m_##MEMBER); \
list_del_init(&((struct S##CLASS *)p)->m_##MEMBER); \
} \
\
void CLASS##_replace_in_list_##MEMBER(CLASS *p, struct list_head *new) \