From 45f98e541997648441c9c33175ddb7ef48f96ab2 Mon Sep 17 00:00:00 2001 From: Russell Bryant Date: Fri, 30 Nov 2007 18:47:14 +0000 Subject: Merged revisions 90310 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r90310 | russell | 2007-11-30 12:46:46 -0600 (Fri, 30 Nov 2007) | 2 lines Add some notes on the behavior of ao2_unlink() after a discussion with Tilghman ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90311 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- include/asterisk/astobj2.h | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) (limited to 'include/asterisk/astobj2.h') diff --git a/include/asterisk/astobj2.h b/include/asterisk/astobj2.h index bef3c9a79..4c35c4641 100644 --- a/include/asterisk/astobj2.h +++ b/include/asterisk/astobj2.h @@ -364,7 +364,24 @@ int ao2_container_count(struct ao2_container *c); * \note Remember to set the key before calling this function. */ void *ao2_link(struct ao2_container *c, void *newobj); -void *ao2_unlink(struct ao2_container *c, void *newobj); +/*! + * \brief Remove an object from the container + * + * \arg c the container + * \arg obj the object to unlink + * + * \retval NULL, always + * + * \note The object requested to be unlinked must be valid. However, if it turns + * out that it is not in the container, this function is still safe to + * be called. + * + * \note If the object gets unlinked from the container, the container's + * reference to the object will be automatically released. This is + * slightly different than ao2_link(), which inherits a reference instead + * of automatically increasing the reference count. + */ +void *ao2_unlink(struct ao2_container *c, void *obj); /*! \brief Used as return value if the flag OBJ_MULTIPLE is set */ struct ao2_list { -- cgit v1.2.3