make AST_LIST_REMOVE_HEAD safer to use

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6394 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Kevin P. Fleming 2005-08-24 23:10:06 +00:00
parent a07997b961
commit 7950e4216e

View file

@ -305,14 +305,15 @@ struct { \
\param field This is the name of the field (declared using AST_LIST_ENTRY())
used to link entries of this list together.
Removes the head entry from the list, and returns a pointer to it. The
forward-link pointer in the returned entry is \b not cleared. This macro
is safe to call on an empty list.
Removes the head entry from the list, and returns a pointer to it.
This macro is safe to call on an empty list.
*/
#define AST_LIST_REMOVE_HEAD(head, field) ({ \
typeof((head)->first) cur = (head)->first; \
if (cur) \
if (cur) { \
(head)->first = cur->field.next; \
cur->field.next = NULL; \
} \
cur; \
})