aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authormarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2004-12-29 07:50:15 +0000
committermarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2004-12-29 07:50:15 +0000
commit81a86946b8ee7b9606a53952b45355f61161cbf5 (patch)
treefe102087d96c9b25bf2a9346ec2e1779682234dd /include
parent63b86b9f8029d79709af21f382513d86433724b6 (diff)
Merge remainder of kpfleming's astobj patch (bug #3183)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@4582 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'include')
-rwxr-xr-xinclude/asterisk/astobj.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/include/asterisk/astobj.h b/include/asterisk/astobj.h
index 162654024..a70cf70aa 100755
--- a/include/asterisk/astobj.h
+++ b/include/asterisk/astobj.h
@@ -179,6 +179,7 @@ extern "C" {
while((iterator = (container)->head)) { \
(container)->head = (iterator)->next[0]; \
ASTOBJ_DESTROY(iterator,destructor); \
+ ASTOBJ_UNREF(iterator,destructor); \
} \
ASTOBJ_CONTAINER_UNLOCK(container); \
} while(0)
@@ -190,7 +191,7 @@ extern "C" {
ASTOBJ_CONTAINER_TRAVERSE(container, do { \
ASTOBJ_RDLOCK(iterator); \
if (!(comparefunc(iterator->field, (data)))) { \
- found = ASTOBJ_REF(iterator); \
+ found = iterator; \
ASTOBJ_CONTAINER_WRLOCK(container); \
if (prev) \
prev->next[0] = next; \
@@ -232,7 +233,7 @@ extern "C" {
do { \
ASTOBJ_CONTAINER_WRLOCK(container); \
(newobj)->next[0] = (container)->head; \
- (container)->head = (newobj); \
+ (container)->head = ASTOBJ_REF(newobj); \
ASTOBJ_CONTAINER_UNLOCK(container); \
} while(0)